Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Пт мар 29, 2024 00:06

...
Google Search
Forth-FAQ Spy Grafic

Часовой пояс: UTC + 3 часа [ Летнее время ]




Ответить
Имя пользователя:
Заголовок:
Текст сообщения:
Введите текст вашего сообщения. Длина сообщения в символах не более: 60000

Размер шрифта:
Цвет шрифта
Настройки:
BBCode ВКЛЮЧЕН
[img] ВЫКЛЮЧЕН
[flash] ВЫКЛЮЧЕН
[url] ВКЛЮЧЕН
Смайлики ВЫКЛЮЧЕНЫ
Отключить в этом сообщении BBCode
Не преобразовывать адреса URL в ссылки
Вопрос
Теперь гостю придется вводить здесь пароль. Не от своей учетной записи, а ПАРОЛЬ ДЛЯ ГОСТЯ, получить который можно после регистрации на форуме через ЛС.:
Этот вопрос предназначен для выявления и предотвращения автоматических регистраций.
   

Обзор темы - Quark 64: выбор модели жизненного цикла и ее адаптация
Автор Сообщение
  Заголовок сообщения:  Re: Quark 64: выбор модели жизненного цикла и ее адаптация  Ответить с цитатой
Mihail писал(а):
Что касается Форта, программу на сентябрь я выполнил.
http://fpauk.narod.ru/FAsmForth64.tar.bz2

Это примерно как если бы на тренировке по бегу вместо 10 кругов по стадиону приехать на такси к финишу... :?
Сообщение Добавлено: Чт сен 12, 2013 15:47
  Заголовок сообщения:  Re: Quark 64: выбор модели жизненного цикла и ее адаптация  Ответить с цитатой
Mihail, таки поставь в настройках профиля на форуме всплывающее окошко при получении ЛС ;)
Сообщение Добавлено: Вс сен 08, 2013 20:52
  Заголовок сообщения:  Re: Quark 64: выбор модели жизненного цикла и ее адаптация  Ответить с цитатой
Хищник писал(а):
Нужно fasm 1.70.
ОС - главное, чтобы 64-разрядная. Можно проверить пример с OpenGL из папки 64-разрядных примеров.

Под Ubuntu64 не нашел примеров для OpenGL.
Что касается Форта, программу на сентябрь я выполнил.
http://fpauk.narod.ru/FAsmForth64.tar.bz2
Загрузка файлов не работает
(не перетащил FILE-POSITION REPOSITION-FILE требующиеся для READ-LINE).

Не знаю как реализовать опрос клавиатуры без gcc.
Сообщение Добавлено: Сб сен 07, 2013 23:08
  Заголовок сообщения:  Re: Quark 64: выбор модели жизненного цикла и ее адаптация  Ответить с цитатой
Mihail писал(а):
О каком примере идет речь?

Там написано.
Mihail писал(а):
Т.е. полуфабрикат на ассемблере таки нужен?

Таки не нужен, это не полуфабрикат.
Сообщение Добавлено: Вт сен 03, 2013 00:20
  Заголовок сообщения:  Re: Quark 64: выбор модели жизненного цикла и ее адаптация  Ответить с цитатой
Хищник писал(а):
1. Проверить, что пример OpenGL64 компилируется.
2. Найти место для работы и скопировать туда файл ..../WIN64/OPENGL/opengl.asm , переименовав его так, как нравится.


О каком примере идет речь? Т.е. полуфабрикат на ассемблере таки нужен?
Сообщение Добавлено: Пн сен 02, 2013 13:35
  Заголовок сообщения:  Re: Quark 64: выбор модели жизненного цикла и ее адаптация  Ответить с цитатой
Битые ссылки?
http://msyst.ru/downloads/quarkexe.zip - 312 байт
http://msyst.ru/downloads/proton.zip - 406 байт
Оба файла повреждены.
Сообщение Добавлено: Вс сен 01, 2013 14:08
  Заголовок сообщения:  Re: Quark 64: выбор модели жизненного цикла и ее адаптация  Ответить с цитатой
Да, и собственно, рекомендации в стиле "что конкретно сделать".
1. Проверить, что пример OpenGL64 компилируется.
2. Найти место для работы и скопировать туда файл ..../WIN64/OPENGL/opengl.asm , переименовав его так, как нравится. Возможно, положить туда же opengl.inc и win64a.inc.
3. Завести журнал разработок. Записи должны быть "метрическими" - например, вместо "сделаны слова для работы со стеком" привести перечень этих слов.
4. Описать здесь свои пожелания (они же планы) по реализации интерфейса. У меня это будет графическая консоль на поверхности OpenGL, как было и в кварке32.
Сообщение Добавлено: Вс сен 01, 2013 02:21
  Заголовок сообщения:  Re: Quark 64: выбор модели жизненного цикла и ее адаптация  Ответить с цитатой
Итак, начинаем. С учетом всех мнений получается, что нам наиболее удобна инкрементная модель. Вкратце она состоит в разработке программы с тремя итерациями ("инкрементами"). При проработке итераций возможности постепенно нарастают, что удобно в случаях, когда коллектив разработчиков не вполне знаком с тем, что предстоит сделать. Итерации будут следующие:

1. Сентябрь 2013. Получение базового варианта приложения. Оно должно содержать:
- реализацию базового движка программы (консоль или ее эквивалент в виде запросов к dll);
- операции со стеком, памятью и арифметико-логические операции;
- базовые операции со словарем (возможно, единственным): поиск, исполнение, компиляция нового слова, CREATE DOES>;
- базовые структуры управления (IF-ELSE-THEN, BEGIN-UNTIL, BEGIN-WHILE-REPEAT, DO-LOOP);

Результатом должна стать программа, которая обеспечит выполнение примеров в виде математических расчетов.

На этом этапе НЕ СТАВИТСЯ ЗАДАЧА:
- реализации проблемных/рискованных алгоритмов, которые способны существенно задержать разработку из-за сложности отладки;
- достижения максимальной производительности;
- обеспечения высокой надежности;
- достижение высокой компактности кода, эргономических показателей и т.п.
Вместо этого все наблюдения записываются в качестве задач для следующих этапов.

2. Октябрь 2013. Наращивание функциональности.
Задача этапа - реализация спецификации транслятора. Это может быть набор слов Quark, или тот набор, который поставит себе в качестве задачи каждый из участников. Тем не менее, спецификация должна быть разработана ДО начала работ над итерацией.

3. Ноябрь 2013. Финальная итерация.
На протяжении второй итерации неоднократно может казаться, что она и является финальной. Тем не менее, практически обязательно появится список обнаруженных проблем и пожеланий, а также замечания к производительности, надежности, стилю кода и т.п. Доработка программы в соответствии с этими требованиями, а также реализация того, что будет освоено в процессе обсуждения, общения и изучения fasm, и будет составлять суть работ по этому этапу.

4. Декабрь 2013. Тестирование, доработка документации.

На что стоит обращать внимание в качестве возможных проблем, характерных для выбранной модели (список далеко не полон, но это то, что, на мой взгляд, способно в наибольшей степени повлиять):
- общий объем работ не уменьшится, несмотря на то, что уже после первой итерации вроде бы что-то будет;
- возможна тенденция к чрезмерному перебрасыванию проблемных мест на последующие итерации.

За основу программы можно взять пример OpenGL из примеров fasm 1.70 (64-разрядная версия).
Сообщение Добавлено: Вс сен 01, 2013 01:59
  Заголовок сообщения:  Re: Quark 64: выбор модели жизненного цикла и ее адаптация  Ответить с цитатой
KPG писал(а):
На Fasm пишется операционная система Колибри ОС и её KolibriOS форум можно на её коде учится использовать Fasm.

Это, возможно, и хороший путь, но несколько посторонний. Fasm - инструмент. Если правильно сформулировать частную задачу, то достаточно будет изучить ровно то, что требуется для ее решения. Просто так "накачивать" навыки работы с Fasm менее эффективно из-за размытости требований к тому, что же реально следует изучить. "Смотреть на код" - это не изучение. Написать программу, находящую сумму элементов массива - это получение конкретного, проверяемого (сравнили с эталонной суммой) и воспроизводимого (написали еще раз, с другим типом данных и на другой платформе) навыка. Форт - это неплохой набор таких частных задач.
Сообщение Добавлено: Ср авг 28, 2013 21:06
  Заголовок сообщения:  Re: Quark 64: выбор модели жизненного цикла и ее адаптация  Ответить с цитатой
Sunforth писал(а):
Не это имел в виду. Допустим поставил fasm потом
1. написал ассемблерный код бесконечного цикла
2. в цикле жду пока пользователь введет слово например dup.
3. делаю поиск того что ввел пользователь
4. нахожу у себя в словаре слово dup, вот дальше что делать незнаю.


На Fasm пишется операционная система Колибри ОС и её KolibriOS форум можно на её коде учится использовать Fasm.

P.S. На Fasm есть сделанные Форт системы (часть названий было в посте выше) их реализации можно посмотреть для "первичного" знакомства.
Сообщение Добавлено: Ср авг 28, 2013 00:06
  Заголовок сообщения:  Re: Quark 64: выбор модели жизненного цикла и ее адаптация  Ответить с цитатой
Нужно fasm 1.70.
ОС - главное, чтобы 64-разрядная. Можно проверить пример с OpenGL из папки 64-разрядных примеров.

Как будем писать - все поясню. В четверг вернусь и начнем.
Сообщение Добавлено: Вт авг 27, 2013 23:10
  Заголовок сообщения:  Re: Quark 64: выбор модели жизненного цикла и ее адаптация  Ответить с цитатой
Скачал отсюда http://flatassembler.net/download.php вот этот файл http://flatassembler.net/fasmw17003.zip
Похоже fasm 1.71 еще не тестировался, качать его смысла нет.
Потом скачал http://msyst.ru/downloads/quarkexe.zip еще это http://msyst.ru/downloads/proton.zip дополнительно вот это http://msyst.ru/downloads/quark.pdf
Что еще нужно?
Windows 7 или Windows XP?
Цитата:
А дальше этим можно будет пользоваться :) В том числе и в зависимости от текущих потребностей. Кстати, в вузе в определенной степени проще внедрить Форт в исследовательскую деятельность, чем внедрить его в конструкторскую практику на предприятии.

Не это имел в виду. Допустим поставил fasm потом
1. написал ассемблерный код бесконечного цикла
2. в цикле жду пока пользователь введет слово например dup.
3. делаю поиск того что ввел пользователь
4. нахожу у себя в словаре слово dup, вот дальше что делать незнаю.
Сообщение Добавлено: Вт авг 27, 2013 22:28
  Заголовок сообщения:  Re: Quark 64: выбор модели жизненного цикла и ее адаптация  Ответить с цитатой
Sunforth писал(а):
Если выбрать каскадную модель, то у нас исходные данные должны быть одинаковы (операционная система, процессор и т.д).

В принципе, инструментальные средства должны быть схожими в любом случае. Что касается ОС, то это в любом случае 64 бита, и весьма и весьма вероятно, что Windows, а не Windows/Linux. На первом этапе не стоит сразу решать много задач. Одинаковый процессор иметь совершенно необязательно, 64-битная ОС на нем все равно должна запускаться, а разные процессоры поспособствуют более широкому охвату тестов.

Sunforth писал(а):
Я например должен подтянуть знания по fasm и quark.

Я полагаю, что все далеко не так страшно. Ассемблер не обязательно знать досконально и во всех тонкостях, чтобы написать просто качественную программу. Даже наоборот, чрезмерное углубление в детали будет создавать иллюзию, что разработчик с трудом пробивается к какому-то замечательному результату, а на деле он просто барахтается в залежах разрозненного кода. Чтобы написать Форт, совсем необязательно охватить его сразу. Достаточно проводить детализацию вплоть до задач вида "давайте теперь напишем кусок кода, который будет заполнять нулями область памяти длиной rcx, адрес которой передан в rax". По конкретным задачам и знание ассемблера углубится.

Sunforth писал(а):
Сделали бесконечный цикл, ждем какую команду введет пользователь. Что дальше?

А дальше этим можно будет пользоваться :) В том числе и в зависимости от текущих потребностей. Кстати, в вузе в определенной степени проще внедрить Форт в исследовательскую деятельность, чем внедрить его в конструкторскую практику на предприятии.
Сообщение Добавлено: Вт авг 27, 2013 21:34
  Заголовок сообщения:  Re: Quark 64: выбор модели жизненного цикла и ее адаптация  Ответить с цитатой
Цитата:
Принципиальный вопрос, требующий принятия согласованного решения - что делаем? Или все экспериментируют с итерациями, или я помогаю с раскладкой работ по каскадной модели.

Если выбрать каскадную модель, то у нас исходные данные должны быть одинаковы (операционная система, процессор и т.д). И к тому же у каждого разный уровень знаний. Я например должен подтянуть знания по fasm и quark.
Вообще важно следующее
научиться
Цитата:
писать новый Форт с максимально возможным соблюдением принципов профессиональной разработки - с планами, тестами, инспекциями кода и документацией

Цитата:
за 4 месяца ассемблерный Форт

Сделали бесконечный цикл, ждем какую команду введет пользователь. Что дальше?
Сообщение Добавлено: Вт авг 27, 2013 20:13
  Заголовок сообщения:  Re: Quark 64: выбор модели жизненного цикла и ее адаптация  Ответить с цитатой
Я тут день буду в Новгороде, поэтому предлагаю потратить время на выбор модели с учетом мнений всех заинтересованных сторон.
Сообщение Добавлено: Вт авг 27, 2013 20:08

Часовой пояс: UTC + 3 часа [ Летнее время ]


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
phpBB сборка от FladeX // Русская поддержка phpBB