Цитата(hardcase @ 22.03.2006 22:52)
2Иван Шихалёв. А ты видел, во ЧТО они транслируют? Парсер для Паскаля на SML занимает гораздо меньше места, чем мой LexParser, который только и умеет, что строку на терминальные символы разбивать (с хэшированием и прочими причендалами).
Писать трансляторы на прцедурных языках быват иногда и эффективно (код быстрый получается), но программа выглядит не очень красиво и часто получается так, что можно потерять нить логики. парсера.
В рабочий код они транслируют. Я всего лишь заметил, что Lex и Yacc для Паскаля есть. Вид автоматически генерируемого кода редко бывает красивым.
Что касается трансляторов на процедурных языках, то внутренности FPC мне лично кажутся вполне красивыми (правда, только со второй версии). Впрочем, согласен, что на специализированных языках решение как правило более изящно, чем на универсальных. Но это верно для всех задач, а не только для трансляторов.