Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Чт мар 28, 2024 23:24

...
Google Search
Forth-FAQ Spy Grafic

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




Начать новую тему Ответить на тему  [ Сообщений: 53 ]  На страницу Пред.  1, 2, 3, 4
Автор Сообщение
 Заголовок сообщения: Re: Nova-forth версии
СообщениеДобавлено: Вс июн 30, 2019 16:53 
Не в сети

Зарегистрирован: Чт янв 07, 2016 19:14
Сообщения: 1288
Благодарил (а): 3 раз.
Поблагодарили: 18 раз.
Как будто кто-то запрещает использовать ассемблер при необходимости :)

_________________
Цель: сделать 64-битную Нову под Винду


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Nova-forth версии
СообщениеДобавлено: Вс июн 30, 2019 17:04 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Для разработчика это не проблема. А для пользователя чуть сложнее. Как на ассемблере достать число со стека? Как положить? Какие регистры нельзя использовать? Понятно, что это в целом не так сложно, но всегда есть сомнение, и порог вхождения получается чуть выше. Поэтому и речь о том, что вещи, которые очевидны для автора проекта, но не так очевидны для пользователей, имеет смысл добавлять именно автору. Даже если ему самому не особо надо.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Nova-forth версии
СообщениеДобавлено: Сб июл 13, 2019 12:55 
Не в сети

Зарегистрирован: Чт янв 07, 2016 19:14
Сообщения: 1288
Благодарил (а): 3 раз.
Поблагодарили: 18 раз.
NOVA-CDW

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

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

_________________
Цель: сделать 64-битную Нову под Винду


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Nova-forth версии
СообщениеДобавлено: Пн дек 23, 2019 22:45 
Не в сети

Зарегистрирован: Чт янв 07, 2016 19:14
Сообщения: 1288
Благодарил (а): 3 раз.
Поблагодарили: 18 раз.
Не прошло и полгода и вот появилась новая версия форта)

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

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

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


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

_________________
Цель: сделать 64-битную Нову под Винду
Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Nova-forth версии
СообщениеДобавлено: Пт июн 12, 2020 20:22 
Не в сети

Зарегистрирован: Чт янв 07, 2016 19:14
Сообщения: 1288
Благодарил (а): 3 раз.
Поблагодарили: 18 раз.
Новая версия 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 Кб]
Скачиваний: 684

_________________
Цель: сделать 64-битную Нову под Винду
Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Nova-forth версии
СообщениеДобавлено: Вс ноя 05, 2023 11:00 
Не в сети

Зарегистрирован: Чт янв 07, 2016 19:14
Сообщения: 1288
Благодарил (а): 3 раз.
Поблагодарили: 18 раз.
64-битная версия Nova-forth 2.0 для Виндовс (тестовая).

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

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

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

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

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

_________________
Цель: сделать 64-битную Нову под Винду


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Nova-forth версии
СообщениеДобавлено: Сб ноя 11, 2023 21:28 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Интересно, fasm не так давно выпущен в еще одной версии. Другое дело, что период стремления к высокой производительности в одном потоке CPU уже в целом завершился, поэтому машинный код уже и не так актуален. Конечно, можно dll сделать на fasm (подключив к Форту), но как-то хочется уже другого, GUI вместо консоли, быстрой интеграции компонентов и прочего, что на ассемблере выписывать просто очень трудоемко.
Но продвижение - это интересно. Если проект эволюционирует, он рано или поздно куда-нибудь да приедет.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Nova-forth версии
СообщениеДобавлено: Вс ноя 12, 2023 23:55 
Не в сети

Зарегистрирован: Чт янв 07, 2016 19:14
Сообщения: 1288
Благодарил (а): 3 раз.
Поблагодарили: 18 раз.
Hishnik писал(а):
Интересно, fasm не так давно выпущен в еще одной версии. Другое дело, что период стремления к высокой производительности в одном потоке CPU уже в целом завершился, поэтому машинный код уже и не так актуален. Конечно, можно dll сделать на fasm (подключив к Форту), но как-то хочется уже другого, GUI вместо консоли, быстрой интеграции компонентов и прочего, что на ассемблере выписывать просто очень трудоемко.
Но продвижение - это интересно. Если проект эволюционирует, он рано или поздно куда-нибудь да приедет.

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

_________________
Цель: сделать 64-битную Нову под Винду


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 53 ]  На страницу Пред.  1, 2, 3, 4

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


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6


Вы не можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

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