unparse-attoparsec alternatives and similar packages
Based on the "Parsing" category.
Alternatively, view unparse-attoparsec alternatives based on common mentions on social networks and blogs.
-
megaparsec
Industrial-strength monadic parser combinator library -
Earley
Parsing all context-free grammars using Earley's algorithm in Haskell. -
trifecta
Parser combinators with highlighting, slicing, layout, literate comments, Clang-style diagnostics and the kitchen sink -
replace-megaparsec
Stream editing with Haskell Megaparsec parsers -
parser-combinators
Lightweight package providing commonly useful parser combinators -
scanner
Fast non-backtracking incremental combinator parsing for bytestrings -
descriptive
Self-describing consumers/parsers; forms, cmd-line args, JSON, etc. -
weighted-regexp
Regular Expression Matching in Haskell -
pipes-aeson
Encode and decode JSON streams using Aeson and Pipes. -
pipes-attoparsec
Utilities to convert a parser into a pipe -
parsec-free
Parsec API encoded as a deeply-embedded DSL, for debugging and analysis -
incremental-parser
Haskell parsing combinator liibrary that can be fed the input and emit the parsed output incrementally -
data-stm32
ARM SVD and CubeMX XML parser and pretty printer for STM32 family -
replace-attoparsec
Stream editing with Haskell Attoparsec parsers -
hsemail
Haskell Parsec parsers for the syntax defined in RFC2821 and 2822 -
parsec-parsers
Orphan instances so you can use `parsers` with `parsec`. -
parsers-megaparsec
`parsers` instances for Megaparsec -
matrix-market-attoparsec
Attoparsec parsers for the NIST Matrix Market format -
record-syntax
A library for parsing and processing the Haskell syntax sprinkled with anonymous records -
attoparsec-parsec
An Attoparsec compatibility layer for Parsec -
attoparsec-expr
Port of parsec's expression parser to attoparsec. -
streaming-binary
Incremental serialization and deserialization of Haskell values. -
fuzzy-dates
Automatically detect and parse dates in many different formats -
antlrc
Haskell binding to the ANTLR parser generator C runtime library http://www.antlr.org/wiki/display/ANTLR3/ANTLR3+Code+Generation+-+C -
syntactical
Haskell library for distfix expression parsing -
megalisp
megalisp is a compliant lisp parser written in megaparsec -
hspec-parsec
Hspec expectations for testing Parsec parsers
Static code analysis for 29 languages.
Do you think we are missing an alternative of unparse-attoparsec or a related project?
README
Unparse attoparsec
This library provides an interface to build programs that can be interpreted both as parsers and as printers.
This library essentially defines two types:
Parser :: * -> * -> *
, a wrapper aroundattoparsec
's ownParser :: * -> *
;Printer :: * -> * -> *
, a type which does the inverse of a parser;
and a type class Attoparsec
, instantiated by Parser
and Printer
, wrapping
attoparsec
's core operations (including lookaheads!).
Monadic and applicative composition can be used under a ForallF Monad p
constraint
(resp. ForallF Applicative p
), meaning that for all types x
, the type p x
is an instance of Monad
(resp. Applicative
). These constraints are made
possible thanks to the constraints
package. The
profunctor-monad
package
provides convenient ways to work with them (with
or rebindable syntax).
Examples
Check out example/AesonParser.hs