Monadic parser combinators

Hutton, Graham and Meijer, Erik (1996) Monadic parser combinators. Technical Report: NOTTCS-TR-96-4. School of Computer Science and IT, University of Nottingham.

[img] PDF - Requires a PDF viewer such as GSview, Xpdf or Adobe Acrobat Reader
Download (254kB)


In functional programming, a popular approach to building recursive descent parsers is to model parsers as functions, and to define higher-order functions (or combinators) that implement grammar constructions such as sequencing, choice, and repetition. Such parsers form an instance of a monad, an algebraic structure from mathematics that has proved useful for addressing a number of computational problems. The purpose of this report is to provide a step-by-step tutorial on the monadic approach to building functional parsers, and to explain some of the benefits that result from exploiting monads. No prior knowledge of parser combinators or of monads is assumed. Indeed, this report can also be viewed as a first introduction to the use of monads in programming.

Item Type: Monograph (Technical Report)
Schools/Departments: University of Nottingham, UK > Faculty of Science > School of Computer Science
Identification Number: NOTTCS-TR-96-4
Depositing User: Hutton, Graham
Date Deposited: 26 Oct 2005
Last Modified: 12 Oct 2017 11:29

Actions (Archive Staff Only)

Edit View Edit View