ailev.ru

19 января 2008 · Комментарий

Без заголовка

Это очень старая тема - с ней носятся чуть не с появления языков. Наворотов много - от разннобразных макрпроцессоров до всяких лисповских средств и форта. В O'Caml возможность произвольного расширения грамматики (равно как и написания парсера для quotations с нуля) встроена очень давно - Camlp4 (никакой особенной мощности это не требует). По-мелочи ей пользуются часто (всякий синтаксический сахар навешивают), крупное использование я знаю одно - в системе автоматического доказательства Coq сделано расширение для записи математических формул, с которыми она манипулирует. С практической точки зрения фича оказалась малополезной. Проблема упираетcя не в синтаксис, а в дизайн - а это-то как раз и сложно. Сделать парсер и так сейчас не проблема. Проблема - спроектировать семантику и отобразить ее во что-то разумное. Причем язык с хорошим дизайном imho снимает большую часть потребностей. Сложность жабского API в основном же не от "отсутствия синтаксиса", а от слабости языка.

К записи · К обсуждению