среда, 27 марта 2013 г.

FORTH-машина для скриптов

Что сделано:

1. Стандартные возможности. Обратная польская запись (ОПЗ). Строки. Числа. Арифметические операторы. DUP, DROP, ROT etc. Определение слов, выполняемых непосредственно при компиляции скрипта. IF, WHILE, LOOP. Определение констант.
2. Вложенные слова.
3. Переменные.
4. Массивы.
5. Лямбды и итераторы.
6. Определение собственных "классов".
7. Возможность обработки не только ОПЗ, но и аргументов справа.
8. Проекция стандартных Delphi-классов на словарь машины.
9. Доступ к RTTI от Delphi. Delphi 7. (Delphi XE3 - сделаем. Там всё веселее, там RTTI сильно богаче).
10. Работа с файлами.
11. try..finally, try..except, возбуждение собственных исключений.
12. exit, break, continue, halt.
13. Возможность управления встроенным парсером.
14. Стереотипы (мета-классы и мета-мета-классы). Программисты БД может быть поймут так - "данные" и "мета-данные".
15. Проверка типов.
16. Работа с деревом словаря. Перебор слов. Доопределение слов в run-time.
17. Оператор CASE.
18. Оператор RULES.
19. Масса слов для работы со строками и наборами символов.
20. Ленивые выражения.
21. Потоки (THREAD). Без синхронизации между друг другом. Синхронизация есть только с основным потоком выполнения.
22. Специализированная обработка модальности. Модальные объекты получают свой собственный кусок скрипта и выполняют его в собственном модальном цикле.
23. Вызов функций относительно текущего контекста (пример - передача this или self).
24. callback'и для процесса компиляции.
25. virtual, abstract, override, redefinition.
26. inherited.

-- и всё это сделано на Delphi7. Порт на Delphi XE3 - не за горами.

Ну и немного иронии:

Комментариев нет:

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