parsix: Parser combinators with slicing, error recovery, and syntax highlighting

[ bsd3, library, parsing ] [ Propose Tags ]

A parser combinator library based on parsers (like trifecta) with slicing, error recovery, and syntax highlighted diagnostics

[Skip to Readme]


Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


Versions [RSS],,,,,,,,
Change log
Dependencies base (>=4.7 && <5), containers (>=0.5.7), fingertree (>=0.1.3), mtl (>=2.2.1), parsers (>=0.12.7), prettyprinter (>=1.1.1), prettyprinter-ansi-terminal (>=1.1.1), text (>=1.2.2), transformers (>=0.5.2) [details]
License BSD-3-Clause
Copyright 2017-2019 Olle Fredriksson
Author Olle Fredriksson
Category Parsing
Home page
Source repo head: git clone
Uploaded by OlleFredriksson at 2020-03-01T23:26:11Z
Reverse Dependencies 1 direct, 0 indirect [details]
Downloads 3612 total (14 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2020-03-02 [all 1 reports]

Readme for parsix-

[back to package description]

parsix Build Status Hackage

Adventures in parser combinators.

This is basically a Trifecta clone, i.e. an implementation of the parsers interface, with the following differences:

  • Add error recovery (see withRecovery) based on Megaparsec's.
  • Use the text library instead of bytestring for input strings. This means that the library interfaces better with the rest of the Haskell library ecosystem and that slicing (see sliced) returns Text.
  • Use the prettyprinter library for pretty-printing.
  • Actually implement the highlighting interface from parsers. This means that error messages that show input code are syntax highlighted.