Parsec vs. Boost.Spirit
Sep. 6th, 2010 12:11 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Вчора осилив Parsec. Після Boost.Spirit такі штуки мене вже більше не дивують. Вражає лише лаконічність коду: BNF перекладається майже без проблем. Із ghci дуже зручно тестувати парсери і їх комбінації (вихлоп g++ при помилках у Boost.Spirit мене досі лякає).
Коротше кажучи, приємна і зручна у користуванні бібліотека.
Цікаво те що і Parsec і Boost.Spirit у мене випливли в одному й тому ж проекті. Сам проект на C++, а одну маленьку утиліту вирішив спробувати написати на Haskell (отримавши натхнення від статті Дмитра Астапова "Давно не брал я в руки шашек"). Низхідне проектування майже вийшло, тільки в кінці на одній функції застряг. Треба буде пошукати як прийнято у Haskell обробляти помилки.
Коротше кажучи, приємна і зручна у користуванні бібліотека.
Цікаво те що і Parsec і Boost.Spirit у мене випливли в одному й тому ж проекті. Сам проект на C++, а одну маленьку утиліту вирішив спробувати написати на Haskell (отримавши натхнення від статті Дмитра Астапова "Давно не брал я в руки шашек"). Низхідне проектування майже вийшло, тільки в кінці на одній функції застряг. Треба буде пошукати як прийнято у Haskell обробляти помилки.