The polyparse package

[Tags:lgpl, library]

A variety of alternative parser combinator libraries, including the original HuttonMeijer set. The Poly sets have features like good error reporting, arbitrary token type, running state, lazy parsing, and so on. Finally, Text.Parse is a proposed replacement for the standard Read class, for better deserialisation of Haskell values from Strings.

[Skip to Readme]


Versions 1.0, 1.1, 1.2, 1.3, 1.4, 1.4.1, 1.5, 1.6, 1.7, 1.8, 1.9, 1.10, 1.11, 1.12
Dependencies base (<4.4), bytestring, haskell98 [details]
License LGPL
Author Malcolm Wallace <>
Maintainer author
Category Text, Parsing
Home page
Uploaded Tue Jan 4 17:08:02 UTC 2011 by MalcolmWallace
Updated Wed Dec 24 18:06:29 UTC 2014 by HerbertValerioRiedel to revision 2
Distributions Arch:1.12, Debian:1.11, Fedora:1.12, FreeBSD:1.11, LTSHaskell:1.12, NixOS:1.12, Stackage:1.12, Tumbleweed:1.12
Downloads 113227 total (4696 in the last 30 days)
0 []
Status Docs uploaded by user
Build status unknown [no reports yet]




Maintainer's Corner

For package maintainers and hackage trustees

Readme for polyparse

Readme for polyparse-1.4.1

    polyparse - a collection of alternative parser combinator libraries

Installation instructions:
We currently support nhc98, ghc, and Hugs.  The automatic configuration
detects which compilers/interpreters you have, and prepares a build
tree for each.  Installation may require write-permission on the system
directories of the compiler/interpreter.  The libraries and interfaces
can then be used as "-package polyparse" (for ghc/nhc98 - no extra options
required for Hugs).

    sh configure
    make install

Options to configure are:
    --buildwith=...  e.g. ghc-6.6,        to build for a specific compiler
    --prefix=...     e.g. /usr/local,     to change installation location

Complaints to:  :-)

    For those building on Windows /without/ Cygwin, you can avoid the need
    for configure/make steps by simply running the minimal build script in
    You will need to edit it for the location of your compiler etc.

What this package contains:

  docs/			Some rudimentary HTML documentation about the libraries.
  docs/haddock/		Haddock-generated API documentation.
  examples/		Some small examples of how the libraries are used.

	Parse			A replacement for the Prelude Read class.
	Parse/ByteString	Like Text.Parse, except input is ByteString.
	HuttonMeijer		Early parser combinators from 1996.
	HuttonMeijerWallace	Extended for arbitrary token type + running
				state + error msgs.
  src/Text/ParserCombinators/Poly	Space-efficient parsers.
	Base		A class-based interface.  Most combinators defined here.
	Plain		The instance for simple polymorphic parsers.
	Lazy		The instance for lazy polymorphic parsers.
	State		The instance for strict polymorphic parsers with state.
	StateLazy	The instance for lazy polymorphic parsers with state.
	ByteString	An experimental instance for parsing from ByteString.