frisby: Linear time composable parser for PEG grammars

[ bsd3, library, text ] [ Propose Tags ] [ Report a vulnerability ]

frisby is a parser library that can parse arbitrary PEG grammars in linear time. Unlike other parsers of PEG grammars, frisby need not be supplied with all possible rules up front, allowing composition of smaller parsers.

PEG parsers are never ambiguous and allow infinite lookahead with no backtracking penalty. Since PEG parsers can look ahead arbitrarily, they can easily express rules such as the maximal munch rule used in lexers, meaning no separate lexer is needed.

In addition to many standard combinators, frisby provides routines to translate standard regex syntax into frisby parsers.

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.1, 0.2, 0.2.1, 0.2.2, 0.2.3, 0.2.4, 0.2.5
Change log Changelog.md
Dependencies array, base (>=4 && <5), containers, fail, mtl, semigroups [details]
Tested with ghc >=7.6 && <7.7, ghc >=7.8 && <7.9, ghc >=7.10 && <7.11, ghc >=8.0 && <8.1, ghc >=8.2 && <8.3, ghc >=8.4 && <8.5, ghc >=8.6 && <8.7, ghc >=8.8 && <8.9
License BSD-3-Clause
Copyright John Meacham (2006)
Author John Meacham <john@repetae.net>
Maintainer Ben Gamari <ben@smart-cactus.org>
Category Text
Home page http://repetae.net/computer/frisby/
Source repo head: git clone https://github.com/bgamari/frisby
Uploaded by BenGamari at 2020-02-17T21:27:17Z
Distributions LTSHaskell:0.2.5, NixOS:0.2.5, Stackage:0.2.5
Reverse Dependencies 1 direct, 0 indirect [details]
Downloads 4981 total (42 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-02-17 [all 1 reports]