3 version: 0.1.0.20210201
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: AGPL-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
34 parsers/Parsers/*/inputs/*
39 tested-with: GHC==9.0.1
41 source-repository head
43 location: git://git.sourcephile.fr/haskell/symantic-parser
46 description: Dump GHC's Core in HTML
51 default-language: Haskell2010
56 -Wincomplete-uni-patterns
57 -Wincomplete-record-updates
62 -eventlog -fprof-auto -fprof-auto-calls
68 Language.Haskell.TH.HideName
70 Symantic.Parser.Grammar
71 Symantic.Parser.Grammar.Combinators
72 Symantic.Parser.Grammar.Fixity
73 Symantic.Parser.Grammar.ObserveSharing
74 Symantic.Parser.Grammar.Optimize
75 Symantic.Parser.Grammar.View
76 Symantic.Parser.Grammar.Write
77 Symantic.Parser.Haskell
78 Symantic.Parser.Haskell.Optimize
79 Symantic.Parser.Haskell.Term
80 Symantic.Parser.Haskell.View
81 Symantic.Parser.Machine
82 Symantic.Parser.Machine.Generate
83 Symantic.Parser.Machine.Input
84 Symantic.Parser.Machine.Instructions
85 Symantic.Parser.Machine.Optimize
86 Symantic.Parser.Machine.Program
87 Symantic.Parser.Machine.View
88 Symantic.Univariant.Letable
89 Symantic.Univariant.Trans
96 GeneralizedNewtypeDeriving,
98 MultiParamTypeClasses,
114 template-haskell >= 2.16,
120 -- visibility: public
122 hs-source-dirs: parsers
124 Parsers.Brainfuck.Attoparsec
125 Parsers.Brainfuck.Handrolled
126 Parsers.Brainfuck.SymanticParser
127 Parsers.Brainfuck.Types
131 Parsers.Utils.Handrolled
132 Parsers.Utils.Attoparsec
133 Parsers.Utils.Attoparsec.Text
139 GeneralizedNewtypeDeriving,
141 MultiParamTypeClasses,
152 containers >= 0.5.10.1,
162 template-haskell >= 2.16,
168 test-suite symantic-parser-test
170 type: exitcode-stdio-1.0
183 Paths_symantic_parser
185 Paths_symantic_parser
188 -fexternal-interpreter
191 symantic-parser:parsers,
194 -- Needed for exported Data.Map.Internal
195 containers >= 0.5.10.1,
205 template-haskell >= 2.16,
206 -- th-lift-instances >= 0.1.17,
211 -- QuickCheck >= 2.0,
215 -- FIXME: add when haskellPackages.ormolu has been unbroken
216 -- build-tool-depends:
217 -- ormolu:ormolu >= 1.5
219 build-depends: dump-core
220 ghc-options: -fplugin=DumpCore
222 benchmark symantic-parser-benchmark
224 type: exitcode-stdio-1.0
225 hs-source-dirs: benchmarks
227 default-language: Haskell2010
230 Paths_symantic_parser
232 Paths_symantic_parser
236 -fexternal-interpreter
240 symantic-parser:parsers,
249 template-haskell >= 2.16,