Я нашел несколько ресурсов на эту тему, но все они требуют глубокого понимания SmallTalk или Haskell, о котором я знаю.
Как узнать о комбинаторах парсеров?
Ответ 1
Вот несколько библиотек-комбайнов парсера в более основных языках:
Ответ 2
Я написал 8 длинных записей в блогах на монодичных комбинаторах парсеров в С# и F #; см. здесь для первого.
См. также FParsec (Parsec for F #)
Ответ 3
В Интернете есть несколько замечательных статей, описывающих комбинаторы парсеров в С#, но не поддерживающий исходный репозиторий, поэтому я создал его по адресу:
http://code.google.com/p/sprache/
Кто-нибудь, знающий о комбинаторах синтаксического анализатора, вероятно, может многое сделать для его улучшения (пожалуйста, шаг вперед, если это похоже на вас:))
Ответ 4
Если вы знаете Python, PyParsing.
Ответ 5
Для меня этот документ был чрезвычайно полезен. Это почти бессмысленно. В некоторых небольших местах они ссылаются на Gofer.
Ответ 6
Я нашел интересную статью о реализации комбинатора парсеров в С#. Он также ссылается на некоторые более общие документы по этому вопросу.
Статья в Википедии по этому вопросу также содержит общее объяснение концепции.
Ответ 7
Chrise Double написал комбинатор парсера в Javascript.
Ответ 8
Cay Horstmann имеет 4 лекции парсератора в Scala с упражнениями. Есть пример разбор внешних DSL в Scala здесь.
Ответ 9
Здесь есть ссылка на беседу (слайды и script) на комбинаторах монадического парсера в С++.
Ответ 10
http://www.codecommit.com/blog/scala/the-magic-behind-parser-combinators