Haskell parsing tools-yacc: lex: happy:?


Итак, похоже, что Happy является надежной заменой yacc в Haskell. Существует ли столь же надежный генератор лексеров для замены lex / flex?

2 9

2 ответа:

Алекс? http://www.haskell.org/alex/

Инструмент для генерации лексических анализаторов в Haskell, дающий описание лексем, которые должны быть распознаны в форме регулярных выражений. Он похож на инструмент lex или flex для C / C++...

Alex является частью платформыHaskell , поэтому при установке платформы у вас автоматически появится работающий Alex.

Алекс тоже на Хакаже. Если у вас естьcabal-установите инструмент (который также поставляется с платформой Haskell), то вы можете построить и установить последнюю версию Alex с помощью

    cabal install alex

Чтобы узнать, какая последняя версия Alex, и загрузить исходный код отдельно, перейдите на страницу Alex HackageDB.

Alex также может быть предварительно упакован для вашей операционной системы...

Happy: Yacc:: Alex: Lex

Или используйте одну из множества библиотек синтаксического анализатора и комбинатора лексеров.