Live briefing
Everything about Recursive ascent parser
In computer science, recursive ascent parsing is a technique for implementing an LR parser which uses mutually-recursive functions rather than tables. Thus, the parser is directly encoded in the host language similar to recursive descent. Direct encoding usually yields a parser which is faster than its table-driven equivalent for the same reason that compilation is faster than interpretation. It is also (nominally) possible to hand edit a recursive ascent parser, whereas a tabular implementation is nigh unreadable to the average human. Wikipedia →
đź§ Start here: a 6-step reading path
- Read the overview: Recursive ascent parserA 5-minute orientation
- Read the landmark paper: On a recursive ascent parserCited 13 times
- Go sideways: LL parserA closely related topic
- Go sideways: Variadic templateA closely related topic
đź“– Definitions
No dictionary entry for this exact phrase.
🏆 Landmark papers (most cited)
📚 Books worth reading
Open Library didn't respond; try again in a moment.
đź”— Related topics
- LL parser In computer science, an LL parser is a top-down parser for a restricted context-free language. It parses the input from Left to right, performing Leftmost…
- Variadic template In computer programming, variadic templates or variation generics are templates that take a variable number of type parameters. They exist in several programmin…
- GNU Bison GNU Bison, commonly known as Bison, is a parser generator that is part of the GNU Project. Bison reads a specification in Bison syntax (described as "machine-re…
- LR parser In computer science, LR parsers are a type of bottom-up parser that analyse deterministic context-free languages in linear time. There are several variants…
- Tail recursive parser In computer science, tail recursive parsers are a derivation from the more common recursive descent parsers. Tail recursive parsers are commonly used to…
- SLR grammar SLR grammars are the class of formal grammars accepted by a Simple LR parser. SLR grammars are a superset of all LR(0) grammars and a subset of all LALR(1)…
- Nemerle Nemerle is a general-purpose, high-level, statically typed programming language designed for platforms using the Common Language Infrastructure (.NET/Mono)…
- Tail call In computer science, a tail call is a subroutine call performed as the final action of a procedure. If the target of a tail is the same subroutine, the…