[#] [Из песочницы] Про Parboiled
habrabot(difrex,1) — All
2015-11-05 19:00:04




#### Часть 1. Почему Parboiled?

Сегодня, в свете бурного роста популярности функциональных языков программирования, всё чаще находят себе применение комбинаторы парсеров — инструменты, облегчающие разбор текста простым смертным. Такие библиотеки, как [Parsec][1] (Haskell) и [Planck][2] (OCaml) уже успели хорошо себя зарекомендовать в своих экосистемах. Их удобство и возможности в своё время подтолкнули создателя языка Scala, Мартина Одерски, внести в стандартную библиотеку их аналог — [Scala Parser Combinators][3] (ныне вынесены в [scala-modules][4]), а знание и умение пользоваться подобными инструментами — отнести к обязательным требованиям к Scala-разработчикам [уровня A3][5]. Эта серия статей посвящена библиотеке [Parboiled][6] — мощной альтернативе и возможной замене для Scala Parser Combinators. В ней мы подробно рассмотрим работу с текущей версией библиотеки — Parboiled2, а также уделим внимание Parboiled1, так как большая часть существующего кода всё ещё использует именно её. **Структура цикла:**

* Часть 1. Почему Parboiled?
* Часть 2. Сопоставление текста
* Часть 3. Извлечение данных
* Часть 4. Суровая действительность

[Читать дальше →][7]

[1]: https://wiki.haskell.org/Parsec
[2]: https://bitbucket.org/camlspotter/planck
[3]: https://github.com/scala/scala-parser-combinators
[4]: http://mvnrepository.com/artifact/org.scala-lang.modules
[5]: http://www.scala-lang.org/old/node/8610
[6]: https://github.com/sirthias/parboiled
[7]: http://habrahabr.ru/post/270233/#habracut