августа 28, 2010

DForth: продвижения 3

Устроил полный рефакторинг. Почти готова возможность подключения внешних библиотек.

Сразу после запуска доступно 525 команд — вышло много комбинаторных взрывов с типизированными командами. В этом деле M4 очень помогает избежать копипаста.


2 комментария:

Dekar комментирует...

Интересно, тоже как-то давно пробовал реализовывать форт, но не смог сделать ветвление, которое меня бы устраивало)

У тебя типизированный стек? Имхо он не очень удобен, придется сильно расширять набор слов. Самое интересное - дать возможность "интерпретатору" полный контроль над памятью(организовать работу со строками/массивами на форте), но к сожалению теряется безопасность и пригодность для встраивания.

Дож комментирует...

Если интересно, то тут есть всё, что готово
http://code.google.com/p/igrodelica/wiki/DForth

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

На безопасность я полностью забил — в форте трудно делать какие бы то ни было проверки :) Я сделаю отладочный режим, в котором будет отслеживаться происходящее и выдаваться варинги.

Строки я частично реализовал — pchar и строки с автоматическим подсчётом ссылок на себя.

Вообще, планирую сделать гибкую систему создания своих структур аля массивы, struct, классы и т.д.

Отправить комментарий

Постоянные читатели

Обо мне

Моя фотография
Мой e-mail: vitek_03(at)mail(dot)ru