Live briefing
Everything about Parser combinator
Higher-order function that combines several parsers
In computer programming, a parser combinator is a higher-order function that accepts several parsers as input and returns a new parser as its output. In this context, a parser is a function accepting strings as input and returning some structure as output, typically a parse tree or a set of indices representing locations in the string where parsing stopped successfully. Parser combinators enable a recursive descent parsing strategy that facilitates modular piecewise construction and testing. This parsing technique is called combinatory parsing. Wikipedia →
đź§ Start here: a 6-step reading path
- Read the overview: Parser combinatorA 5-minute orientation
- Skim a recent paper: Modeling and implementation of context free grammar combinatorial parserInfluential work since 2022
- Pick up a classic book: Programming in HaskellThe most-reprinted book on the subject
- Read the landmark paper: Combinator Parsers: From Toys to ToolsCited 15 times
- Go sideways: Top-down parsingA closely related topic
- Go sideways: Left recursionA closely related topic
đź“– Definitions
No dictionary entry for this exact phrase.
🗂️ The subject at a glance
🏆 Landmark papers (most cited)
Combinator Parsers: From Toys to Tools
Total parser combinators
MĂmico: a monadic combinator parser generator
Ramble: Parser Combinator for R
byteparsing: a functional parser combinator for mixed ASCII/binary data
Parser Combinators for Extraction
🆕 Influential since 2022
📚 Books worth reading
Programming in HaskellGraham Hutton · 2007
Real World HaskellBryan O'Sullivan, John Goerzen · 2008
Apache Solr 3 Enterprise Search ServerDavid Smiley · 2011
Learn Ruby the Hard WayZed Shaw · 2014
Ranked by number of editions on Open Library, a rough measure of how lasting a book is.
đź”— Related topics
- Top-down parsing Top-down parsing in computer science is a parsing strategy where one first looks at the highest level of the parse tree and works down the parse tree by…
- Left recursion In the formal language theory of computer science, left recursion is a special case of recursion where a string is recognized as part of a language by…
- Memoization In computing, memoization or memoisation is an optimization technique used primarily to speed up computer programs. It works by storing the results of…
- Parsing Parsing, syntax analysis, or syntactic analysis is a process of analyzing a string of symbols, either in natural language, computer languages or data structures…
- Parsing expression grammar In computer science, a parsing expression grammar (PEG) is a type of analytic formal grammar, i.e. it describes a formal language in terms of a set of…
- Earley parser In computer science, the Earley parser is an algorithm for parsing strings that belong to a given context-free language. Named after its inventor Jay Earley…
- Recursive descent parser In computer science, a recursive descent parser is a kind of top-down parser built from a set of mutually recursive procedures (or a non-recursive equivalent)…
- Formal grammar A formal grammar is a set of symbols and the production rules for rewriting some of them into every possible string of a formal language over an alphabet…