"нет"?
Или там - сплошное AST?
:)
А какие Форты - "старые" или "новые"? :)
Я в своем игрушечном фортике строю AST. А кода там меньше, чем в любом другом форте :)
Меня больше всего поразил однажды в начале 90-х полнофункциональный ассемблер (в каком-то из байтовских, по-моему, номеров) на Форте длиной в 50+\- строк!
А оно в каком месте/моменте строится? И - для чего?
На Форте много было красивых, но неизвестных за пределами "тусовки" решений. В частности, этот BNF-парсер подозрительно похож на современные подходы на основе PEG-грамматик. Но появился еще в 1990 году: https://www.bradrodriguez.com/papers/bnfparse.htm
У меня есть серия миниатюрных компиляторов/интерпретаторов для задач обучения. Фортик как раз из таких: https://github.com/true-grue/fortik
Если что - вот в pdf https://dl.acm.org/doi/pdf/10.1145/122094.122095
К слову сказать, Сергей Баранов сделал более развитый вариант, с описанием грамматики подмножества Си прямо на Форте. http://www.euroforth.org/ef17/papers/baranov.pdf
Посторонний вопрос - вы про словосочетание «monotone frameworks» слышали? Или оно буквально в двух статьях и одной книжке встречается?
Почему же, это известный термин. Уже в первых классических работах встречается: https://homes.luddy.indiana.edu/achauhan/Teaching/B629/2006-Fall/CourseMaterial/1977-acta-kam-monotone.pdf
Не, Фактор, как "классический Форт", я бы уже не рассматривал.
Тогда они все не классические, кроме классического. Тем не менее, даже я писал компиляторы в натив для подмножества классики. Шитый код не только для исполнения удобен, его и оптимизировать легко. Местами :)
Вероятно, вы имели в виду самописный "встроенный форт"?
Нет, может быть, при вашем подходе - разницы нет. :) Но, при том, как сам процесс помещения нового слова в словарь - "несколько" отличается от "классики" всей цепочки создания исполнимого кода. Практически, как такового, компилятора, там нет. Сами слова - просто расширяют функционал "нуль-компилятора", "достраивают" его, во/на время "компиляции". По сути именно это "отличие от классики" и есть отличительная черта фортов от "привычных" языков и подходов и - главным ключевым свойством БЕЗГРАНИЧНОЙ расширяемости Форта в любой парадигме и/или на любой уровень "языковой сложности". И - по синтаксису, и - по семантике.
Разумеется, я не могу воспретить Вам настойчиво и целеустремлённо повторять фразу "компилятора не существует" :)
Обсуждают сегодня