3 version: 0.2.0.20210703
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 Pickering,
12 admirably well presented at ICFP-2020: [Staged Selective Parser Combinators](https://icfp20.sigplan.org/details/icfp-2020-papers/20/Staged-Selective-Parser-Combinators).
13 license: AGPL-3.0-or-later
14 author: Julien Moutinho <julm+symantic-parser@sourcephile.fr>
15 maintainer: Julien Moutinho <julm+symantic-parser@sourcephile.fr>
16 bug-reports: https://mails.sourcephile.fr/inbox/symantic-parser
17 copyright: Julien Moutinho <julm+symantic-parser@sourcephile.fr>
18 stability: experimental
32 parsers/Parsers/Brainfuck/inputs/*.bf
37 tested-with: GHC==9.0.1
39 source-repository head
41 location: git://git.sourcephile.fr/haskell/symantic-parser
44 description: Dump GHC's Core in HTML
48 flag disable-ormolu-check
49 description: Remove ormolu from build-tool-depends.
50 Temporary hack while Nixpkgs' haskellPackages.ormolu remains broken.
55 default-language: Haskell2010
60 -Wincomplete-uni-patterns
61 -Wincomplete-record-updates
63 -fprint-potential-instances
69 Language.Haskell.TH.HideName
70 Language.Haskell.TH.Show
72 Symantic.Parser.Grammar
73 Symantic.Parser.Grammar.Combinators
74 Symantic.Parser.Grammar.ObserveSharing
75 Symantic.Parser.Grammar.Optimize
76 Symantic.Parser.Grammar.Production
77 Symantic.Parser.Grammar.View
78 Symantic.Parser.Grammar.Write
79 Symantic.Parser.Machine
80 Symantic.Parser.Machine.Generate
81 Symantic.Parser.Machine.Input
82 Symantic.Parser.Machine.Instructions
83 Symantic.Parser.Machine.Optimize
84 Symantic.Parser.Machine.Program
85 Symantic.Parser.Machine.View
92 GeneralizedNewtypeDeriving,
94 MultiParamTypeClasses,
110 -- For Language.Haskell.Ppr.Lib.pprExp
112 symantic-base >= 0.2,
113 template-haskell >= 2.16,
119 -- visibility: public
121 hs-source-dirs: parsers
123 Parsers.Brainfuck.Attoparsec
124 Parsers.Brainfuck.Handrolled
125 Parsers.Brainfuck.SymanticParser
126 Parsers.Brainfuck.SymanticParser.Grammar
127 Parsers.Brainfuck.Types
131 Parsers.Utils.Handrolled
132 Parsers.Utils.Attoparsec
133 Parsers.Utils.Attoparsec.Text
139 GeneralizedNewtypeDeriving,
141 MultiParamTypeClasses,
151 containers >= 0.5.10.1,
160 symantic-base >= 0.2,
163 template-haskell >= 2.16,
169 test-suite symantic-parser-test
171 type: exitcode-stdio-1.0
184 Paths_symantic_parser
186 Paths_symantic_parser
187 ghc-prof-options: -fexternal-interpreter
190 symantic-parser:parsers,
193 -- Needed for exported Data.Map.Internal
194 containers >= 0.5.10.1,
204 template-haskell >= 2.16,
205 -- th-lift-instances >= 0.1.17,
210 -- QuickCheck >= 2.0,
214 if !flag(disable-ormolu-check)
218 build-depends: dump-core
219 ghc-options: -fplugin=DumpCore
221 benchmark symantic-parser-benchmark
223 type: exitcode-stdio-1.0
224 hs-source-dirs: benchmarks
226 default-language: Haskell2010
229 Paths_symantic_parser
231 Paths_symantic_parser
233 ghc-options: -fno-enable-th-splice-warnings
234 ghc-prof-options: -fexternal-interpreter
238 symantic-parser:parsers,
247 template-haskell >= 2.16,