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: https://mails.sourcephile.fr/inbox/symantic-parser
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
61 -fprint-potential-instances
62 ghc-prof-options: -eventlog -fprof-auto
69 Language.Haskell.TH.HideName
70 Language.Haskell.TH.Show
72 Symantic.Parser.Grammar
73 Symantic.Parser.Grammar.Combinators
74 Symantic.Parser.Grammar.Fixity
75 Symantic.Parser.Grammar.ObserveSharing
76 Symantic.Parser.Grammar.Optimize
77 Symantic.Parser.Grammar.Production
78 Symantic.Parser.Grammar.View
79 Symantic.Parser.Grammar.Write
80 Symantic.Parser.Machine
81 Symantic.Parser.Machine.Generate
82 Symantic.Parser.Machine.Input
83 Symantic.Parser.Machine.Instructions
84 Symantic.Parser.Machine.Optimize
85 Symantic.Parser.Machine.Program
86 Symantic.Parser.Machine.View
89 Symantic.Typed.Letable
99 GeneralizedNewtypeDeriving,
101 MultiParamTypeClasses,
117 template-haskell >= 2.16,
123 -- visibility: public
125 hs-source-dirs: parsers
127 Parsers.Brainfuck.Attoparsec
128 Parsers.Brainfuck.Handrolled
129 Parsers.Brainfuck.SymanticParser
130 Parsers.Brainfuck.SymanticParser.Grammar
131 Parsers.Brainfuck.Types
135 Parsers.Utils.Handrolled
136 Parsers.Utils.Attoparsec
137 Parsers.Utils.Attoparsec.Text
143 GeneralizedNewtypeDeriving,
145 MultiParamTypeClasses,
151 -- -ddump-to-file -ddump-simpl-stats -ddump-splices
157 containers >= 0.5.10.1,
168 template-haskell >= 2.16,
174 test-suite symantic-parser-test
176 type: exitcode-stdio-1.0
189 Paths_symantic_parser
191 Paths_symantic_parser
193 ghc-prof-options: -fexternal-interpreter
196 symantic-parser:parsers,
199 -- Needed for exported Data.Map.Internal
200 containers >= 0.5.10.1,
210 template-haskell >= 2.16,
211 -- th-lift-instances >= 0.1.17,
216 -- QuickCheck >= 2.0,
220 -- FIXME: add when haskellPackages.ormolu has been unbroken
221 -- build-tool-depends:
222 -- ormolu:ormolu >= 1.5
224 build-depends: dump-core
225 ghc-options: -fplugin=DumpCore
227 benchmark symantic-parser-benchmark
229 type: exitcode-stdio-1.0
230 hs-source-dirs: benchmarks
232 default-language: Haskell2010
235 Paths_symantic_parser
237 Paths_symantic_parser
239 ghc-options: -O2 -fno-enable-th-splice-warnings
240 ghc-prof-options: -fexternal-interpreter
244 symantic-parser:parsers,
253 template-haskell >= 2.16,