On Friday October 17, this site was moved to a new server, https://mw.hh.se. The original address will continue to work. Whithin a week or two this site will return to the original address. /Peo HH IT-dep

WG211/M21Yallop: Difference between revisions

From WG 2.11
Jump to navigationJump to search
Created page with "Lexers and parsers are typically defined separately and connected by a token stream. This separate definition is important for modularity, but harmful for performance. We sh..."
 
(No difference)

Latest revision as of 10:05, 12 August 2022

Lexers and parsers are typically defined separately and connected by a token stream. This separate definition is important for modularity, but harmful for performance.

We show how to fuse together separately-defined lexers and parsers, drastically improving performance without compromising modularity. Our staged parser combinator library, FLaP, provides a standard parser combinator interface, but generates specialized token-free code that runs several times faster than ocamlyacc on a range of benchmarks.