]>
Git — Sourcephile - haskell/symantic-parser.git/log
Julien Moutinho [Tue, 31 Aug 2021 18:53:05 +0000 (20:53 +0200)]
copyright: comply with REUSE-3.0
Julien Moutinho [Thu, 5 Aug 2021 13:36:12 +0000 (15:36 +0200)]
machine: remove horizonStack and experiment with alwaysRaise
Julien Moutinho [Tue, 3 Aug 2021 16:26:21 +0000 (18:26 +0200)]
rename {catcher => onException}
Julien Moutinho [Mon, 2 Aug 2021 16:46:50 +0000 (18:46 +0200)]
machine: make failure be minReads=0
Julien Moutinho [Sat, 31 Jul 2021 12:21:48 +0000 (14:21 +0200)]
change ShowLetName into HideableName
Julien Moutinho [Fri, 30 Jul 2021 13:07:27 +0000 (15:07 +0200)]
machine: normalOrderReduction at the last moment
Julien Moutinho [Wed, 28 Jul 2021 14:16:30 +0000 (16:16 +0200)]
machine: fix recursion ending
Julien Moutinho [Sun, 25 Jul 2021 04:43:08 +0000 (06:43 +0200)]
add registers
Symantic.Parser is now faster than Attoparsec on the Brainfuck benchmarks:
```
$ make benchmarks b=Brainfuck/ByteString/hanoi/'*'
benchmarking Brainfuck/ByteString/hanoi/SymanticParser
time 11.33 ms (11.18 ms .. 11.51 ms)
0.999 R² (0.998 R² .. 1.000 R²)
mean 11.12 ms (11.03 ms .. 11.20 ms)
std dev 219.9 μs (164.6 μs .. 301.4 μs)
benchmarking Brainfuck/ByteString/hanoi/Attoparsec
time 15.38 ms (15.26 ms .. 15.52 ms)
0.999 R² (0.999 R² .. 1.000 R²)
mean 15.38 ms (15.29 ms .. 15.49 ms)
std dev 252.1 μs (184.3 μs .. 363.2 μs)
benchmarking Brainfuck/ByteString/hanoi/Handrolled
time 1.608 ms (1.595 ms .. 1.628 ms)
0.999 R² (0.998 R² .. 1.000 R²)
mean 1.585 ms (1.575 ms .. 1.596 ms)
std dev 35.75 μs (26.53 μs .. 51.66 μs)
variance introduced by outliers: 11% (moderately inflated)
```
Julien Moutinho [Fri, 16 Jul 2021 22:26:13 +0000 (00:26 +0200)]
deps: bump to symantic-base 0.2
Julien Moutinho [Fri, 16 Jul 2021 22:23:28 +0000 (00:23 +0200)]
doc: update
Julien Moutinho [Mon, 12 Jul 2021 10:08:03 +0000 (12:08 +0200)]
doc: fix license and {def => shareable}
Julien Moutinho [Sun, 11 Jul 2021 22:02:16 +0000 (00:02 +0200)]
doc: fix reference to Symantic.Typed
Julien Moutinho [Sun, 11 Jul 2021 17:07:46 +0000 (19:07 +0200)]
use symantic-base
Julien Moutinho [Mon, 5 Jul 2021 15:59:01 +0000 (17:59 +0200)]
rename Output to Unlifted
Julien Moutinho [Sun, 4 Jul 2021 02:58:58 +0000 (04:58 +0200)]
grammar: fix Ord SomeFailure
Julien Moutinho [Sun, 4 Jul 2021 02:59:59 +0000 (04:59 +0200)]
cabal: clean up
Julien Moutinho [Sat, 3 Jul 2021 21:08:42 +0000 (23:08 +0200)]
parsers: commit missing file
Julien Moutinho [Sat, 3 Jul 2021 21:06:59 +0000 (23:06 +0200)]
bump version
Julien Moutinho [Sat, 3 Jul 2021 19:44:01 +0000 (21:44 +0200)]
grammar: add precedence to showCode
Julien Moutinho [Sat, 3 Jul 2021 18:57:23 +0000 (20:57 +0200)]
machine: optimize ifThenElse on constant
Julien Moutinho [Sat, 3 Jul 2021 15:07:57 +0000 (17:07 +0200)]
clean warnings
Julien Moutinho [Sat, 3 Jul 2021 14:41:22 +0000 (16:41 +0200)]
machine: add another joinNext optimization when Jump is next
Julien Moutinho [Fri, 2 Jul 2021 16:32:04 +0000 (18:32 +0200)]
rename Symantic.{Univariant => Typed}
Julien Moutinho [Fri, 2 Jul 2021 11:36:22 +0000 (13:36 +0200)]
remove useless benchmarks
Julien Moutinho [Tue, 29 Jun 2021 07:37:45 +0000 (09:37 +0200)]
replace ValueCode by Production
Julien Moutinho [Fri, 7 May 2021 12:03:01 +0000 (14:03 +0200)]
doc: improve a bit the ReadMe.md
Julien Moutinho [Thu, 6 May 2021 17:50:03 +0000 (19:50 +0200)]
TemplateHaskell: why is PprSplice much faster than DumpSplice?
$ make benchmarks/prof-time b=Brainfuck/ByteString/hanoi/SymanticParser.PprSplice
benchmarking Brainfuck/ByteString/hanoi/SymanticParser.PprSplice
time 71.19 ms (69.66 ms .. 72.58 ms)
0.999 R² (0.999 R² .. 1.000 R²)
mean 71.91 ms (71.10 ms .. 73.18 ms)
std dev 1.755 ms (973.5 μs .. 2.766 ms)
$ make benchmarks/prof-time b=Brainfuck/ByteString/hanoi/SymanticParser.DumpSplice
benchmarking Brainfuck/ByteString/hanoi/SymanticParser.DumpSplice
time 170.5 ms (169.7 ms .. 171.0 ms)
1.000 R² (1.000 R² .. 1.000 R²)
mean 169.4 ms (168.3 ms .. 169.9 ms)
std dev 1.046 ms (375.5 μs .. 1.650 ms)
variance introduced by outliers: 12% (moderately inflated)
Julien Moutinho [Tue, 4 May 2021 14:45:52 +0000 (16:45 +0200)]
add benchmarks
Julien Moutinho [Fri, 30 Apr 2021 10:49:02 +0000 (12:49 +0200)]
nix: cleanup
Julien Moutinho [Fri, 30 Apr 2021 10:46:53 +0000 (12:46 +0200)]
test: update
Julien Moutinho [Fri, 30 Apr 2021 10:46:06 +0000 (12:46 +0200)]
machine: improve comments
Julien Moutinho [Fri, 30 Apr 2021 10:40:58 +0000 (12:40 +0200)]
machine: fix view and output
Julien Moutinho [Fri, 30 Apr 2021 10:36:23 +0000 (12:36 +0200)]
machine: fix factorize out raiseException
Julien Moutinho [Fri, 30 Apr 2021 10:34:42 +0000 (12:34 +0200)]
machine: fix mayRaise analysis of catch
Julien Moutinho [Tue, 30 Mar 2021 05:54:53 +0000 (07:54 +0200)]
more on failures
Julien Moutinho [Fri, 26 Mar 2021 01:17:30 +0000 (02:17 +0100)]
grammar: sort symantics by name
Julien Moutinho [Thu, 25 Mar 2021 01:53:57 +0000 (02:53 +0100)]
test: dump splices using TH.runQ instead of calling ghc
Julien Moutinho [Fri, 12 Mar 2021 07:08:09 +0000 (08:08 +0100)]
fix: use a global polyfix for defLet and defRef
Julien Moutinho [Mon, 1 Mar 2021 16:09:42 +0000 (17:09 +0100)]
bug: a ref outside its def must be supported
Julien Moutinho [Mon, 22 Feb 2021 14:20:15 +0000 (15:20 +0100)]
test: add goldens for TH splices
Julien Moutinho [Fri, 19 Feb 2021 13:13:03 +0000 (14:13 +0100)]
nix: update nixpkgs to use cabal-install 3.4
Julien Moutinho [Fri, 19 Feb 2021 13:08:52 +0000 (14:08 +0100)]
machine: renames trying to clarify
Julien Moutinho [Wed, 17 Feb 2021 09:31:19 +0000 (10:31 +0100)]
machine: map exceptionStack by label
Julien Moutinho [Tue, 2 Feb 2021 23:22:34 +0000 (00:22 +0100)]
doc: polish
Julien Moutinho [Sun, 11 Jul 2021 17:13:14 +0000 (19:13 +0200)]
change license to AGPL-3.0-or-later
Julien Moutinho [Mon, 1 Feb 2021 08:23:35 +0000 (09:23 +0100)]
doc: update ToDo
Julien Moutinho [Mon, 1 Feb 2021 09:04:39 +0000 (10:04 +0100)]
test: mute unused-* warnings in TH splices
Julien Moutinho [Mon, 1 Feb 2021 08:22:06 +0000 (09:22 +0100)]
machine: simplify a bit the horizon checking
Julien Moutinho [Mon, 1 Feb 2021 08:12:25 +0000 (09:12 +0100)]
test: hide unique names for reproductibility
Julien Moutinho [Sun, 31 Jan 2021 18:24:46 +0000 (19:24 +0100)]
test: sync
Julien Moutinho [Sun, 31 Jan 2021 06:20:54 +0000 (07:20 +0100)]
Rename Machine.{Build => Program}
Julien Moutinho [Sun, 31 Jan 2021 05:33:56 +0000 (06:33 +0100)]
Reorganize Comb and Instr optimizations
Julien Moutinho [Sun, 31 Jan 2021 01:31:03 +0000 (02:31 +0100)]
doc: update the ReadMe and ChangeLog
Julien Moutinho [Sat, 30 Jan 2021 18:09:34 +0000 (19:09 +0100)]
grammar: open the Comb data-type
Julien Moutinho [Fri, 29 Jan 2021 04:43:34 +0000 (05:43 +0100)]
machine: open the Instr data-type
Julien Moutinho [Fri, 22 Jan 2021 01:19:49 +0000 (02:19 +0100)]
test: unique names changed again
Julien Moutinho [Fri, 22 Jan 2021 01:18:49 +0000 (02:18 +0100)]
prepare testing splices, but cabal-install-3.4 does not build yet
Julien Moutinho [Sun, 17 Jan 2021 12:40:33 +0000 (13:40 +0100)]
Document a bit more the horizon checks
Julien Moutinho [Sat, 16 Jan 2021 15:40:50 +0000 (16:40 +0100)]
stick to ParsleyHaskell's optimizations, except on pattern-matching at the Haskell.Term level
Julien Moutinho [Sat, 9 Jan 2021 10:29:05 +0000 (11:29 +0100)]
test: save
Julien Moutinho [Fri, 8 Jan 2021 13:32:33 +0000 (14:32 +0100)]
test: save
Julien Moutinho [Fri, 8 Jan 2021 12:54:21 +0000 (13:54 +0100)]
test: save
Julien Moutinho [Wed, 6 Jan 2021 05:18:53 +0000 (06:18 +0100)]
machine: rename InstrPure{Haskell => }
Julien Moutinho [Wed, 6 Jan 2021 05:14:46 +0000 (06:14 +0100)]
test: add Nandlang parser
Julien Moutinho [Wed, 6 Jan 2021 05:13:53 +0000 (06:13 +0100)]
test: add string
Julien Moutinho [Wed, 6 Jan 2021 05:13:19 +0000 (06:13 +0100)]
grammar: rename Parser.{Haskell => Grammar.Pure}
Julien Moutinho [Mon, 4 Jan 2021 01:57:02 +0000 (02:57 +0100)]
machine: add horizon optimization
Julien Moutinho [Sat, 2 Jan 2021 01:46:31 +0000 (02:46 +0100)]
add missing golden tests in cabal tarball
Julien Moutinho [Fri, 1 Jan 2021 07:58:16 +0000 (08:58 +0100)]
move doc in *.md files
Julien Moutinho [Fri, 1 Jan 2021 06:31:43 +0000 (07:31 +0100)]
polishing before first publising
Julien Moutinho [Fri, 1 Jan 2021 06:04:24 +0000 (07:04 +0100)]
rename cabal flag dump-splice{ => s}
Julien Moutinho [Fri, 1 Jan 2021 05:54:30 +0000 (06:54 +0100)]
improve make upload
Julien Moutinho [Fri, 1 Jan 2021 05:33:57 +0000 (06:33 +0100)]
add more Nix conveniencies
Julien Moutinho [Fri, 1 Jan 2021 04:53:04 +0000 (05:53 +0100)]
fix required GHC version
Julien Moutinho [Fri, 1 Jan 2021 04:42:40 +0000 (05:42 +0100)]
add make clean
Julien Moutinho [Fri, 1 Jan 2021 04:42:25 +0000 (05:42 +0100)]
remove unneeded dependency
Julien Moutinho [Fri, 1 Jan 2021 04:41:51 +0000 (05:41 +0100)]
ignore result*
Julien Moutinho [Fri, 1 Jan 2021 04:15:07 +0000 (05:15 +0100)]
ignore dump-core/
Julien Moutinho [Fri, 1 Jan 2021 04:12:45 +0000 (05:12 +0100)]
set cabal category to Parsing (like megaparsec)
Julien Moutinho [Fri, 1 Jan 2021 04:11:57 +0000 (05:11 +0100)]
fix make tag
Julien Moutinho [Fri, 1 Jan 2021 04:03:49 +0000 (05:03 +0100)]
rename Parser.{Staging => Haskell}
Julien Moutinho [Fri, 1 Jan 2021 04:03:25 +0000 (05:03 +0100)]
clean up Nix code
Julien Moutinho [Fri, 1 Jan 2021 02:59:01 +0000 (03:59 +0100)]
comment-out unstable golden tests
Julien Moutinho [Fri, 1 Jan 2021 02:43:15 +0000 (03:43 +0100)]
prepare cabal metadata for hackage upload
Julien Moutinho [Fri, 1 Jan 2021 01:55:48 +0000 (02:55 +0100)]
fix cabal metadata
Julien Moutinho [Fri, 1 Jan 2021 01:53:41 +0000 (02:53 +0100)]
add cabal flag 'dump-core'
Julien Moutinho [Fri, 1 Jan 2021 01:53:01 +0000 (02:53 +0100)]
rename Machine.{Gen => Generate}
Julien Moutinho [Wed, 30 Dec 2020 08:11:55 +0000 (09:11 +0100)]
add join-points
Julien Moutinho [Wed, 30 Dec 2020 02:10:40 +0000 (03:10 +0100)]
move runParser to Parser
Julien Moutinho [Wed, 30 Dec 2020 02:05:25 +0000 (03:05 +0100)]
rename Machine.{Eval => Gen}
Julien Moutinho [Wed, 30 Dec 2020 01:31:00 +0000 (02:31 +0100)]
remove Hints draft
Julien Moutinho [Wed, 30 Dec 2020 01:27:47 +0000 (02:27 +0100)]
rename {Automaton => Machine}
Julien Moutinho [Wed, 30 Dec 2020 01:27:08 +0000 (02:27 +0100)]
add missing tests
Julien Moutinho [Wed, 30 Dec 2020 00:13:33 +0000 (01:13 +0100)]
rename {Label => LetName}
Julien Moutinho [Sat, 26 Dec 2020 21:45:01 +0000 (22:45 +0100)]
add farthest position heuristic for parsing error messages
Julien Moutinho [Tue, 1 Dec 2020 04:02:50 +0000 (05:02 +0100)]
Add runParser
Julien Moutinho [Thu, 12 Nov 2020 23:59:15 +0000 (00:59 +0100)]
add Automaton inputs and evaluation
Julien Moutinho [Thu, 12 Nov 2020 23:57:50 +0000 (00:57 +0100)]
bump to ghc-9.0.1 to get a levity-polymorphic CodeQ
Julien Moutinho [Thu, 22 Oct 2020 23:42:37 +0000 (01:42 +0200)]
Fix DumpInstr
Julien Moutinho [Wed, 21 Oct 2020 06:12:43 +0000 (08:12 +0200)]
Add first golden tests for the Automaton