3 version: 0.0.0.20210102
4 synopsis: Parser combinators statically optimized and staged via typed meta-programming
6 This is a work-in-progress experimental library to generate parsers,
7 leveraging Tagless-Final interpreters and Typed Template Haskell staging.
9 This is an alternative but less powerful/reviewed
10 implementation of [ParsleyHaskell](https://github.com/J-mie6/ParsleyHaskell).
11 See the paper by Jamie Willis, Nicolas Wu, and Matthew
12 Pickering, admirably well presented at ICFP-2020: [Staged
14 Combinators](https://icfp20.sigplan.org/details/icfp-2020-papers/20/Staged-Selective-Parser-Combinators).
15 license: GPL-3.0-or-later
16 author: Julien Moutinho <julm+symantic-parser@sourcephile.fr>
17 maintainer: Julien Moutinho <julm+symantic-parser@sourcephile.fr>
18 bug-reports: Julien Moutinho <julm+symantic-parser@sourcephile.fr>
19 copyright: Julien Moutinho <julm+symantic-parser@sourcephile.fr>
20 stability: experimental
37 tested-with: GHC==9.0.0
39 source-repository head
41 location: git://git.sourcephile.fr/haskell/symantic-parser
44 description: Dump GHC's Core in HTML
49 description: Dump code generated by Template Haskell
54 default-language: Haskell2010
61 GeneralizedNewtypeDeriving,
63 MultiParamTypeClasses,
74 -Wincomplete-uni-patterns
75 -Wincomplete-record-updates
83 Symantic.Univariant.Letable
84 Symantic.Univariant.Trans
86 Symantic.Parser.Grammar
87 Symantic.Parser.Grammar.Combinators
88 Symantic.Parser.Grammar.Dump
89 Symantic.Parser.Grammar.Fixity
90 Symantic.Parser.Grammar.ObserveSharing
91 Symantic.Parser.Grammar.Optimize
92 Symantic.Parser.Grammar.Pure
93 Symantic.Parser.Grammar.Write
94 Symantic.Parser.Machine
95 Symantic.Parser.Machine.Dump
96 Symantic.Parser.Machine.Generate
97 Symantic.Parser.Machine.Input
98 Symantic.Parser.Machine.Instructions
106 template-haskell >= 2.16,
111 test-suite symantic-parser-test
113 type: exitcode-stdio-1.0
141 template-haskell >= 2.16,
146 -- QuickCheck >= 2.0,
151 build-depends: dump-core
152 ghc-options: -fplugin=DumpCore
153 if flag(dump-splices)