Forth
http://www.fforum.winglion.ru/

Nova-forth версии
http://www.fforum.winglion.ru/viewtopic.php?f=58&t=3183
Страница 4 из 4

Автор:  Victor__v [ Вс июн 30, 2019 16:53 ]
Заголовок сообщения:  Re: Nova-forth версии

Как будто кто-то запрещает использовать ассемблер при необходимости :)

Автор:  Hishnik [ Вс июн 30, 2019 17:04 ]
Заголовок сообщения:  Re: Nova-forth версии

Для разработчика это не проблема. А для пользователя чуть сложнее. Как на ассемблере достать число со стека? Как положить? Какие регистры нельзя использовать? Понятно, что это в целом не так сложно, но всегда есть сомнение, и порог вхождения получается чуть выше. Поэтому и речь о том, что вещи, которые очевидны для автора проекта, но не так очевидны для пользователей, имеет смысл добавлять именно автору. Даже если ему самому не особо надо.

Автор:  Victor__v [ Сб июл 13, 2019 12:55 ]
Заголовок сообщения:  Re: Nova-forth версии

NOVA-CDW

Основные изменения:
Добавлены слова: UMIN UMAX U> U< BYE
Новая документация (пока разрабатывается) Спасибо KROL!
Основное направление сейчас: причёсывание исходников и написание документаций к либам и Нове в целом.
В ini-файле подключается более навороченный транслятор файлов. Позиционирует ошибку вплоть до слова и выводит путь к файлу, строку и соб-но слово.

Скачать можно тут

Автор:  Victor__v [ Пн дек 23, 2019 22:45 ]
Заголовок сообщения:  Re: Nova-forth версии

Не прошло и полгода и вот появилась новая версия форта)

Что нового?
Слово TEMP-OUT убирает временный словарь со стека контекста
Слова DW@ DW! DW, для будущей совместимости
Слово USER-VECT-DEF - создание пользовательского вектора с поведением по умолчанию
Слово TYPE теперь пользовательский вектор.

Добавлена наработка для перенаправления TYPE-вывода в строку

ООП-библиотека (страшная, но рабочая)
Трансляция JSON-файлов. Незакончено. Пока только трансляция. Было лень добавлять поддержку вещественных чисел. Писать парсеры геморройно.

Вложения:
Nova-CDW 1.07.1 2019.12.23.7z [477.83 Кб]
Скачиваний: 883

Автор:  Victor__v [ Пт июн 12, 2020 20:22 ]
Заголовок сообщения:  Re: Nova-forth версии

Новая версия Nova

Что нового за полгода:
Исправлено 2 бага (1 со словом ALT: , другой с передачей параметра в поток)
Существенно упрощен транслятор файлов, все равно в ini подключается более навороченный.
ALLOCATE FREE и RESIZE стали пользовательскими векторами с поведением по умолчанию, что позволило легко написать либу по проверке хипа на утечки.
Добавлено слово NDROP

По либам:
Написана ещё более страшная, но и более рабочая библиотека по поддержке ООП :D
~er/oop/oop2.f

Написана она была по причине наличия косяков в 1-й попытке.
Дело в том, что когда пробовал применить 1-ю наработку обнаружил, что при написании классов очень сильно не хватает инициализаторов данных и деструкторов.

Короче, во 2-й библиотеки версии это учтено :), да и написана она гораздо понятнее чем предшественница

Вложения:
Nova-CDW 1.07.02 2020.06.12.7Z [477.32 Кб]
Скачиваний: 687

Автор:  Victor__v [ Вс ноя 05, 2023 11:00 ]
Заголовок сообщения:  Re: Nova-forth версии

64-битная версия Nova-forth 2.0 для Виндовс (тестовая).

Имеет приличное количество изменений. Можно сказать, практически другая форт-система.

Что здесь есть:
  • Возможность создания инлайн-слов.
  • Возможность создания слов с различными точками входа.
  • Раздельное хранение кода, данных и словарных структур.
  • Операции с float-стеком
  • Расширенные операции со стеком возвратов (RPICK RPLACE RADD и пр.).
  • Небольшой функционал для работы со строками в хипе.
  • Библиотека для создания лок. переменных.
  • Поддержка калбеков (обратных вызовов) и Си-декларации.

В поставке также находится компилятор FASM, которым собирается часть слов форта.

Чего здесь нет:
  • Полезных библиотек
  • Оптимизации
  • Документации

Также поскольку версия тестовая, в ней могут оставаться баги. Дизайн ядра еще в процессе причёсывания.

Автор:  Hishnik [ Сб ноя 11, 2023 21:28 ]
Заголовок сообщения:  Re: Nova-forth версии

Интересно, fasm не так давно выпущен в еще одной версии. Другое дело, что период стремления к высокой производительности в одном потоке CPU уже в целом завершился, поэтому машинный код уже и не так актуален. Конечно, можно dll сделать на fasm (подключив к Форту), но как-то хочется уже другого, GUI вместо консоли, быстрой интеграции компонентов и прочего, что на ассемблере выписывать просто очень трудоемко.
Но продвижение - это интересно. Если проект эволюционирует, он рано или поздно куда-нибудь да приедет.

Автор:  Victor__v [ Вс ноя 12, 2023 23:55 ]
Заголовок сообщения:  Re: Nova-forth версии

Hishnik писал(а):
Интересно, fasm не так давно выпущен в еще одной версии. Другое дело, что период стремления к высокой производительности в одном потоке CPU уже в целом завершился, поэтому машинный код уже и не так актуален. Конечно, можно dll сделать на fasm (подключив к Форту), но как-то хочется уже другого, GUI вместо консоли, быстрой интеграции компонентов и прочего, что на ассемблере выписывать просто очень трудоемко.
Но продвижение - это интересно. Если проект эволюционирует, он рано или поздно куда-нибудь да приедет.

Я использовал фасм для генерации exe и создания примитивов, ибо лень было в кодах вбивать. Больше причин так-то и нет.

Страница 4 из 4 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/