packages feed

symantic-parser 0.0.0.20210101 → 0.0.0.20210102

raw patch · 54 files changed

+817/−2 lines, 54 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

Files

ChangeLog.md view
@@ -1,3 +1,7 @@+## symantic-parser-0.0.0.20210102++* Add missing golden tests in the Cabal tarball.+ ## symantic-parser-0.0.0.20210101  * Initial (pre-alpha) release, on the unsuspecting world at sleep.
symantic-parser.cabal view
@@ -1,6 +1,6 @@-cabal-version: 2.2+cabal-version: 2.4 name: symantic-parser-version: 0.0.0.20210101+version: 0.0.0.20210102 synopsis: Parser combinators statically optimized and staged via typed meta-programming description:   This is a work-in-progress experimental library to generate parsers,@@ -30,6 +30,8 @@   default.nix   flake.nix   shell.nix+  test/Golden/**/*.dump+  test/Golden/**/*.txt extra-tmp-files: build-type: Simple tested-with: GHC==9.0.0
+ test/Golden/Grammar/app.dump view
@@ -0,0 +1,3 @@+<*>++ pure Haskell+` pure ()
+ test/Golden/Grammar/app.opt.dump view
@@ -0,0 +1,1 @@+pure (Haskell ())
+ test/Golden/Grammar/boom.dump view
@@ -0,0 +1,46 @@+<*>++ <*>+| + <*>+| | + pure const+| | ` pure id+| ` <*>+|   + <*>+|   | + def name_5+|   | | ` <*>+|   | |   + pure const+|   | |   ` pure id+|   | ` def name_7+|   |   ` <*>+|   |     + <*>+|   |     | + def name_1+|   |     | | ` <*>+|   |     | |   + pure const+|   |     | |   ` pure id+|   |     | ` def name_3+|   |     |   ` <*>+|   |     |     + <*>+|   |     |     | + <*>+|   |     |     | | + pure const+|   |     |     | | ` pure id+|   |     |     | ` rec name_7+|   |     |     ` rec name_3+|   |     ` rec name_7+|   ` def name_2+|     ` pure ()+` <*>+  + <*>+  | + ref name_5+  | ` def name_4+  |   ` <*>+  |     + <*>+  |     | + ref name_1+  |     | ` def name_6+  |     |   ` <*>+  |     |     + <*>+  |     |     | + <*>+  |     |     | | + pure const+  |     |     | | ` pure id+  |     |     | ` rec name_4+  |     |     ` rec name_6+  |     ` rec name_4+  ` ref name_2
+ test/Golden/Grammar/boom.opt.dump view
@@ -0,0 +1,36 @@+<*>++ <*>+| + <*>+| | + <*>+| | | + <*>+| | | | + <*>+| | | | | + pure ((.) ((.) (.)) . ((.) ((.) (.)) . (.) ((.) (const id))))+| | | | | ` def name_2+| | | | |   ` pure (const id)+| | | | ` def name_4+| | | |   ` <*>+| | | |     + <*>+| | | |     | + def name_5+| | | |     | | ` pure (const id)+| | | |     | ` def name_7+| | | |     |   ` <*>+| | | |     |     + <*>+| | | |     |     | + pure (const id)+| | | |     |     | ` rec name_4+| | | |     |     ` rec name_7+| | | |     ` rec name_4+| | | ` def name_6+| | |   ` pure ()+| | ` ref name_2+| ` def name_1+|   ` <*>+|     + <*>+|     | + ref name_5+|     | ` def name_3+|     |   ` <*>+|     |     + <*>+|     |     | + pure (const id)+|     |     | ` rec name_1+|     |     ` rec name_3+|     ` rec name_1+` ref name_6
+ test/Golden/Grammar/brainfuck.dump view
@@ -0,0 +1,140 @@+<*>++ <*>+| + <*>+| | + pure const+| | ` pure id+| ` <*>+|   + <*>+|   | + <*>+|   | | + pure const+|   | | ` pure id+|   | ` <*>+|   |   + <*>+|   |   | + pure (flip ($))+|   |   | ` def name_6+|   |   |   ` pure ()+|   |   ` def name_8+|   |     ` <|>+|   |       + <*>+|   |       | + <*>+|   |       | | + pure (.)+|   |       | | ` <*>+|   |       | |   + def name_2+|   |       | |   | ` <*>+|   |       | |   |   + pure flip+|   |       | |   |   ` pure const+|   |       | |   ` def name_1+|   |       | |     ` satisfy+|   |       | ` rec name_8+|   |       ` pure id+|   ` ref name_6+` def name_4+  ` <*>+    + def name_5+    | ` <|>+    |   + <*>+    |   | + <*>+    |   | | + pure (.)+    |   | | ` <*>+    |   | |   + pure cons+    |   | |   ` <*>+    |   | |     + <*>+    |   | |     | + pure const+    |   | |     | ` conditional+    |   | |     |   + bs+    |   | |     |   | + <*>+    |   | |     |   | | + <*>+    |   | |     |   | | | + pure const+    |   | |     |   | | | ` pure Haskell+    |   | |     |   | | ` ref name_1+    |   | |     |   | + <*>+    |   | |     |   | | + <*>+    |   | |     |   | | | + pure const+    |   | |     |   | | | ` pure Haskell+    |   | |     |   | | ` ref name_1+    |   | |     |   | + <*>+    |   | |     |   | | + <*>+    |   | |     |   | | | + pure const+    |   | |     |   | | | ` pure Haskell+    |   | |     |   | | ` ref name_1+    |   | |     |   | + <*>+    |   | |     |   | | + <*>+    |   | |     |   | | | + pure const+    |   | |     |   | | | ` pure Haskell+    |   | |     |   | | ` ref name_1+    |   | |     |   | + <*>+    |   | |     |   | | + <*>+    |   | |     |   | | | + pure const+    |   | |     |   | | | ` pure Haskell+    |   | |     |   | | ` ref name_1+    |   | |     |   | + <*>+    |   | |     |   | | + <*>+    |   | |     |   | | | + pure const+    |   | |     |   | | | ` pure Haskell+    |   | |     |   | | ` ref name_1+    |   | |     |   | ` <*>+    |   | |     |   |   + <*>+    |   | |     |   |   | + pure const+    |   | |     |   |   | ` <*>+    |   | |     |   |   |   + <*>+    |   | |     |   |   |   | + <*>+    |   | |     |   |   |   | | + pure const+    |   | |     |   |   |   | | ` pure id+    |   | |     |   |   |   | ` <*>+    |   | |     |   |   |   |   + <*>+    |   | |     |   |   |   |   | + pure const+    |   | |     |   |   |   |   | ` ref name_1+    |   | |     |   |   |   |   ` <*>+    |   | |     |   |   |   |     + <*>+    |   | |     |   |   |   |     | + <*>+    |   | |     |   |   |   |     | | + pure const+    |   | |     |   |   |   |     | | ` pure id+    |   | |     |   |   |   |     | ` <*>+    |   | |     |   |   |   |     |   + <*>+    |   | |     |   |   |   |     |   | + pure (flip ($))+    |   | |     |   |   |   |     |   | ` ref name_6+    |   | |     |   |   |   |     |   ` def name_7+    |   | |     |   |   |   |     |     ` <|>+    |   | |     |   |   |   |     |       + <*>+    |   | |     |   |   |   |     |       | + <*>+    |   | |     |   |   |   |     |       | | + pure (.)+    |   | |     |   |   |   |     |       | | ` <*>+    |   | |     |   |   |   |     |       | |   + ref name_2+    |   | |     |   |   |   |     |       | |   ` ref name_1+    |   | |     |   |   |   |     |       | ` rec name_7+    |   | |     |   |   |   |     |       ` pure id+    |   | |     |   |   |   |     ` ref name_6+    |   | |     |   |   |   ` <*>+    |   | |     |   |   |     + pure Haskell+    |   | |     |   |   |     ` rec name_4+    |   | |     |   |   ` <*>+    |   | |     |   |     + <*>+    |   | |     |   |     | + pure const+    |   | |     |   |     | ` pure Haskell+    |   | |     |   |     ` ref name_1+    |   | |     |   + look+    |   | |     |   | ` ref name_1+    |   | |     |   ` empty+    |   | |     ` <*>+    |   | |       + <*>+    |   | |       | + <*>+    |   | |       | | + pure const+    |   | |       | | ` pure id+    |   | |       | ` <*>+    |   | |       |   + <*>+    |   | |       |   | + pure (flip ($))+    |   | |       |   | ` ref name_6+    |   | |       |   ` def name_3+    |   | |       |     ` <|>+    |   | |       |       + <*>+    |   | |       |       | + <*>+    |   | |       |       | | + pure (.)+    |   | |       |       | | ` <*>+    |   | |       |       | |   + ref name_2+    |   | |       |       | |   ` ref name_1+    |   | |       |       | ` rec name_3+    |   | |       |       ` pure id+    |   | |       ` ref name_6+    |   | ` rec name_5+    |   ` pure id+    ` pure Haskell
+ test/Golden/Grammar/brainfuck.opt.dump view
@@ -0,0 +1,87 @@+<*>++ <*>+| + <*>+| | + <*>+| | | + pure ((.) ((.) (const id)) . ((.) (const id) . flip ($)))+| | | ` def name_4+| | |   ` pure ()+| | ` def name_6+| |   ` <|>+| |     + <*>+| |     | + <*>+| |     | | + <*>+| |     | | | + pure ((.) (.))+| |     | | | ` def name_7+| |     | | |   ` pure (flip const)+| |     | | ` satisfy+| |     | ` rec name_6+| |     ` pure id+| ` ref name_4+` def name_2+  ` <*>+    + pure ((flip ($)) Haskell)+    ` def name_3+      ` <|>+        + <*>+        | + <*>+        | | + <*>+        | | | + <*>+        | | | | + conditional+        | | | | | + bs+        | | | | | | + <*>+        | | | | | | | + pure ((.) ((.) ((.) (.))) . ((.) ((.) ((.) cons)) . ((flip ($)) ((.) (const id) . flip ($)) . ((.) . ((.) . ((.) . (const . const Haskell)))))))+        | | | | | | | ` satisfy+        | | | | | | + <*>+        | | | | | | | + pure ((.) ((.) ((.) (.))) . ((.) ((.) ((.) cons)) . ((flip ($)) ((.) (const id) . flip ($)) . ((.) . ((.) . ((.) . (const . const Haskell)))))))+        | | | | | | | ` satisfy+        | | | | | | + <*>+        | | | | | | | + pure ((.) ((.) ((.) (.))) . ((.) ((.) ((.) cons)) . ((flip ($)) ((.) (const id) . flip ($)) . ((.) . ((.) . ((.) . (const . const Haskell)))))))+        | | | | | | | ` satisfy+        | | | | | | + <*>+        | | | | | | | + pure ((.) ((.) ((.) (.))) . ((.) ((.) ((.) cons)) . ((flip ($)) ((.) (const id) . flip ($)) . ((.) . ((.) . ((.) . (const . const Haskell)))))))+        | | | | | | | ` satisfy+        | | | | | | + <*>+        | | | | | | | + pure ((.) ((.) ((.) (.))) . ((.) ((.) ((.) cons)) . ((flip ($)) ((.) (const id) . flip ($)) . ((.) . ((.) . ((.) . (const . const Haskell)))))))+        | | | | | | | ` satisfy+        | | | | | | + <*>+        | | | | | | | + pure ((.) ((.) ((.) (.))) . ((.) ((.) ((.) cons)) . ((flip ($)) ((.) (const id) . flip ($)) . ((.) . ((.) . ((.) . (const . const Haskell)))))))+        | | | | | | | ` satisfy+        | | | | | | ` <*>+        | | | | | |   + <*>+        | | | | | |   | + <*>+        | | | | | |   | | + <*>+        | | | | | |   | | | + <*>+        | | | | | |   | | | | + <*>+        | | | | | |   | | | | | + pure ((.) ((.) ((.) ((.) ((.) ((.) ((.) ((.) (.)))))))) . ((.) ((.) ((.) ((.) ((.) ((.) ((.) ((.) cons))))))) . ((.) ((.) ((.) ((.) ((.) ((flip ($)) ((.) (const id) . flip ($))))))) . ((.) ((.) ((.) ((.) ((.) (.))))) . ((.) ((.) ((.) ((.) ((.) (.))))) . ((.) ((.) ((.) ((.) ((.) (.))))) . ((.) ((.) ((.) ((.) ((.) const)))) . ((.) ((.) ((.) ((.) ((flip ($)) (const Haskell))))) . ((.) ((.) ((.) ((.) (.)))) . ((.) ((.) ((.) ((.) const))) . ((.) ((.) ((.) ((flip ($)) Haskell))) . ((.) ((.) ((.) (.))) . ((.) ((.) ((.) (const id))) . ((flip ($)) ((.) (const id) . flip ($)) . ((.) . ((.) . ((.) . const)))))))))))))))))+        | | | | | |   | | | | | ` satisfy+        | | | | | |   | | | | ` ref name_4+        | | | | | |   | | | ` def name_1+        | | | | | |   | | |   ` <|>+        | | | | | |   | | |     + <*>+        | | | | | |   | | |     | + <*>+        | | | | | |   | | |     | | + <*>+        | | | | | |   | | |     | | | + pure ((.) (.))+        | | | | | |   | | |     | | | ` ref name_7+        | | | | | |   | | |     | | ` satisfy+        | | | | | |   | | |     | ` rec name_1+        | | | | | |   | | |     ` pure id+        | | | | | |   | | ` ref name_4+        | | | | | |   | ` rec name_2+        | | | | | |   ` satisfy+        | | | | | + look+        | | | | | | ` satisfy+        | | | | | ` empty+        | | | | ` ref name_4+        | | | ` def name_5+        | | |   ` <|>+        | | |     + <*>+        | | |     | + <*>+        | | |     | | + <*>+        | | |     | | | + pure ((.) (.))+        | | |     | | | ` ref name_7+        | | |     | | ` satisfy+        | | |     | ` rec name_5+        | | |     ` pure id+        | | ` ref name_4+        | ` rec name_3+        ` pure id
+ test/Golden/Grammar/eof.dump view
@@ -0,0 +1,1 @@+eof
+ test/Golden/Grammar/eof.opt.dump view
@@ -0,0 +1,1 @@+eof
+ test/Golden/Grammar/many-a.dump view
@@ -0,0 +1,16 @@+<*>++ def name_1+| ` <|>+|   + <*>+|   | + <*>+|   | | + pure (.)+|   | | ` <*>+|   | |   + pure cons+|   | |   ` <*>+|   | |     + <*>+|   | |     | + pure const+|   | |     | ` pure Haskell+|   | |     ` satisfy+|   | ` rec name_1+|   ` pure id+` pure Haskell
+ test/Golden/Grammar/many-a.opt.dump view
@@ -0,0 +1,10 @@+<*>++ pure ((flip ($)) Haskell)+` def name_1+  ` <|>+    + <*>+    | + <*>+    | | + pure ((.) . (cons . const Haskell))+    | | ` satisfy+    | ` rec name_1+    ` pure id
+ test/Golden/Grammar/many-char-eof.dump view
@@ -0,0 +1,20 @@+<*>++ <*>+| + pure const+| ` <*>+|   + def name_1+|   | ` <|>+|   |   + <*>+|   |   | + <*>+|   |   | | + pure (.)+|   |   | | ` <*>+|   |   | |   + pure cons+|   |   | |   ` <*>+|   |   | |     + <*>+|   |   | |     | + pure const+|   |   | |     | ` pure Haskell+|   |   | |     ` satisfy+|   |   | ` rec name_1+|   |   ` pure id+|   ` pure Haskell+` eof
+ test/Golden/Grammar/many-char-eof.opt.dump view
@@ -0,0 +1,12 @@+<*>++ <*>+| + pure (const . (flip ($)) Haskell)+| ` def name_1+|   ` <|>+|     + <*>+|     | + <*>+|     | | + pure ((.) . (cons . const Haskell))+|     | | ` satisfy+|     | ` rec name_1+|     ` pure id+` eof
+ test/Golden/Grammar/many-char-fail.dump view
@@ -0,0 +1,25 @@+<*>++ <*>+| + pure const+| ` <*>+|   + def name_2+|   | ` <|>+|   |   + <*>+|   |   | + <*>+|   |   | | + pure (.)+|   |   | | ` <*>+|   |   | |   + pure cons+|   |   | |   ` <*>+|   |   | |     + <*>+|   |   | |     | + pure const+|   |   | |     | ` pure Haskell+|   |   | |     ` def name_1+|   |   | |       ` satisfy+|   |   | ` rec name_2+|   |   ` pure id+|   ` pure Haskell+` <*>+  + <*>+  | + pure const+  | ` pure Haskell+  ` ref name_1
+ test/Golden/Grammar/many-char-fail.opt.dump view
@@ -0,0 +1,12 @@+<*>++ <*>+| + pure ((flip ($)) (const Haskell) . ((.) . (const . (flip ($)) Haskell)))+| ` def name_1+|   ` <|>+|     + <*>+|     | + <*>+|     | | + pure ((.) . (cons . const Haskell))+|     | | ` satisfy+|     | ` rec name_1+|     ` pure id+` satisfy
+ test/Golden/Grammar/unit-unit.dump view
@@ -0,0 +1,8 @@+<*>++ <*>+| + <*>+| | + pure const+| | ` pure id+| ` def name_1+|   ` pure ()+` ref name_1
+ test/Golden/Grammar/unit-unit.opt.dump view
@@ -0,0 +1,6 @@+<*>++ <*>+| + pure (const id)+| ` def name_1+|   ` pure ()+` ref name_1
+ test/Golden/Grammar/unit.dump view
@@ -0,0 +1,1 @@+pure ()
+ test/Golden/Grammar/unit.opt.dump view
@@ -0,0 +1,1 @@+pure ()
+ test/Golden/Machine/a-or-b.dump view
@@ -0,0 +1,18 @@+catchFail+  <try>+  | push (const Haskell)+  | read+  | lift ($)+  | popFail+  | ret+  <handler>+    pushInput+    lift InstrPureSameOffset+    choices [id]+      <branch>+      | push (const Haskell)+      | read+      | lift ($)+      | ret+      <default>+        fail
+ test/Golden/Machine/app.dump view
@@ -0,0 +1,2 @@+push (Haskell ())+ret
+ test/Golden/Machine/boom.dump view
@@ -0,0 +1,51 @@+push ((.) ((.) (.)) . ((.) ((.) (.)) . (.) ((.) (const id))))+name_2:+| push (const id)+| ret+call name_2+lift ($)+name_5:+| name_6:+| | push (const id)+| | ret+| call name_6+| name_7:+| | push (const id)+| | call name_5+| | lift ($)+| | call name_7+| | lift ($)+| | ret+| call name_7+| lift ($)+| call name_5+| lift ($)+| ret+call name_5+lift ($)+name_3:+| push ()+| ret+call name_3+lift ($)+call name_2+lift ($)+name_1:+| call name_6+| name_4:+| | push (const id)+| | call name_1+| | lift ($)+| | call name_4+| | lift ($)+| | ret+| call name_4+| lift ($)+| call name_1+| lift ($)+| ret+call name_1+lift ($)+call name_3+lift ($)+ret
+ test/Golden/Machine/brainfuck.dump view
@@ -0,0 +1,159 @@+push ((.) ((.) (const id)) . ((.) (const id) . flip ($)))+name_2:+| push ()+| ret+call name_2+lift ($)+name_3:+| catchFail+|   <try>+|   | push ((.) (.))+|   | name_4:+|   | | push (flip const)+|   | | ret+|   | call name_4+|   | lift ($)+|   | read+|   | lift ($)+|   | call name_3+|   | lift ($)+|   | popFail+|   | ret+|   <handler>+|     pushInput+|     lift InstrPureSameOffset+|     choices [id]+|       <branch>+|       | push id+|       | ret+|       <default>+|         fail+call name_3+lift ($)+call name_2+lift ($)+name_7:+| push ((flip ($)) Haskell)+| name_1:+| | catchFail+| |   <try>+| |   | join_55:+| |   | | call name_2+| |   | | lift ($)+| |   | | name_6:+| |   | | | catchFail+| |   | | |   <try>+| |   | | |   | push ((.) (.))+| |   | | |   | call name_4+| |   | | |   | lift ($)+| |   | | |   | read+| |   | | |   | lift ($)+| |   | | |   | call name_6+| |   | | |   | lift ($)+| |   | | |   | popFail+| |   | | |   | ret+| |   | | |   <handler>+| |   | | |     pushInput+| |   | | |     lift InstrPureSameOffset+| |   | | |     choices [id]+| |   | | |       <branch>+| |   | | |       | push id+| |   | | |       | ret+| |   | | |       <default>+| |   | | |         fail+| |   | | call name_6+| |   | | lift ($)+| |   | | call name_2+| |   | | lift ($)+| |   | | call name_1+| |   | | lift ($)+| |   | | popFail+| |   | | ret+| |   | pushInput+| |   | read+| |   | swap+| |   | loadInput+| |   | choices [(== Haskell),(== Haskell),(== Haskell),(== Haskell),(== Haskell),(== Haskell),(== Haskell)]+| |   |   <branch>+| |   |   | push ((.) ((.) ((.) (.))) . ((.) ((.) ((.) cons)) . ((flip ($)) ((.) (const id) . flip ($)) . ((.) . ((.) . ((.) . (const . const Haskell)))))))+| |   |   | read+| |   |   | lift ($)+| |   |   | refJoin join_55+| |   |   <branch>+| |   |   | push ((.) ((.) ((.) (.))) . ((.) ((.) ((.) cons)) . ((flip ($)) ((.) (const id) . flip ($)) . ((.) . ((.) . ((.) . (const . const Haskell)))))))+| |   |   | read+| |   |   | lift ($)+| |   |   | refJoin join_55+| |   |   <branch>+| |   |   | push ((.) ((.) ((.) (.))) . ((.) ((.) ((.) cons)) . ((flip ($)) ((.) (const id) . flip ($)) . ((.) . ((.) . ((.) . (const . const Haskell)))))))+| |   |   | read+| |   |   | lift ($)+| |   |   | refJoin join_55+| |   |   <branch>+| |   |   | push ((.) ((.) ((.) (.))) . ((.) ((.) ((.) cons)) . ((flip ($)) ((.) (const id) . flip ($)) . ((.) . ((.) . ((.) . (const . const Haskell)))))))+| |   |   | read+| |   |   | lift ($)+| |   |   | refJoin join_55+| |   |   <branch>+| |   |   | push ((.) ((.) ((.) (.))) . ((.) ((.) ((.) cons)) . ((flip ($)) ((.) (const id) . flip ($)) . ((.) . ((.) . ((.) . (const . const Haskell)))))))+| |   |   | read+| |   |   | lift ($)+| |   |   | refJoin join_55+| |   |   <branch>+| |   |   | push ((.) ((.) ((.) (.))) . ((.) ((.) ((.) cons)) . ((flip ($)) ((.) (const id) . flip ($)) . ((.) . ((.) . ((.) . (const . const Haskell)))))))+| |   |   | read+| |   |   | lift ($)+| |   |   | refJoin join_55+| |   |   <branch>+| |   |   | push ((.) ((.) ((.) ((.) ((.) ((.) ((.) ((.) (.)))))))) . ((.) ((.) ((.) ((.) ((.) ((.) ((.) ((.) cons))))))) . ((.) ((.) ((.) ((.) ((.) ((flip ($)) ((.) (const id) . flip ($))))))) . ((.) ((.) ((.) ((.) ((.) (.))))) . ((.) ((.) ((.) ((.) ((.) (.))))) . ((.) ((.) ((.) ((.) ((.) (.))))) . ((.) ((.) ((.) ((.) ((.) const)))) . ((.) ((.) ((.) ((.) ((flip ($)) (const Haskell))))) . ((.) ((.) ((.) ((.) (.)))) . ((.) ((.) ((.) ((.) const))) . ((.) ((.) ((.) ((flip ($)) Haskell))) . ((.) ((.) ((.) (.))) . ((.) ((.) ((.) (const id))) . ((flip ($)) ((.) (const id) . flip ($)) . ((.) . ((.) . ((.) . const)))))))))))))))))+| |   |   | read+| |   |   | lift ($)+| |   |   | call name_2+| |   |   | lift ($)+| |   |   | name_5:+| |   |   | | catchFail+| |   |   | |   <try>+| |   |   | |   | push ((.) (.))+| |   |   | |   | call name_4+| |   |   | |   | lift ($)+| |   |   | |   | read+| |   |   | |   | lift ($)+| |   |   | |   | call name_5+| |   |   | |   | lift ($)+| |   |   | |   | popFail+| |   |   | |   | ret+| |   |   | |   <handler>+| |   |   | |     pushInput+| |   |   | |     lift InstrPureSameOffset+| |   |   | |     choices [id]+| |   |   | |       <branch>+| |   |   | |       | push id+| |   |   | |       | ret+| |   |   | |       <default>+| |   |   | |         fail+| |   |   | call name_5+| |   |   | lift ($)+| |   |   | call name_2+| |   |   | lift ($)+| |   |   | call name_7+| |   |   | lift ($)+| |   |   | read+| |   |   | lift ($)+| |   |   | refJoin join_55+| |   |   <default>+| |   |     fail+| |   <handler>+| |     pushInput+| |     lift InstrPureSameOffset+| |     choices [id]+| |       <branch>+| |       | push id+| |       | ret+| |       <default>+| |         fail+| call name_1+| lift ($)+| ret+call name_7+lift ($)+ret
+ test/Golden/Machine/eof.dump view
@@ -0,0 +1,23 @@+catchFail+  <try>+  | catchFail+  |   <try>+  |   | pushInput+  |   | read+  |   | pop+  |   | popFail+  |   | loadInput+  |   | fail+  |   <handler>+  |     loadInput+  |     push ()+  |     popFail+  |     ret+  <handler>+    pushInput+    lift InstrPureSameOffset+    choices [id]+      <branch>+      | fail+      <default>+        fail
+ test/Golden/Machine/many-a.dump view
@@ -0,0 +1,23 @@+push ((flip ($)) Haskell)+name_1:+| catchFail+|   <try>+|   | push ((.) . (cons . const Haskell))+|   | read+|   | lift ($)+|   | call name_1+|   | lift ($)+|   | popFail+|   | ret+|   <handler>+|     pushInput+|     lift InstrPureSameOffset+|     choices [id]+|       <branch>+|       | push id+|       | ret+|       <default>+|         fail+call name_1+lift ($)+ret
+ test/Golden/Machine/many-char-eof.dump view
@@ -0,0 +1,48 @@+push (const . (flip ($)) Haskell)+name_1:+| catchFail+|   <try>+|   | push ((.) . (cons . const Haskell))+|   | read+|   | lift ($)+|   | call name_1+|   | lift ($)+|   | popFail+|   | ret+|   <handler>+|     pushInput+|     lift InstrPureSameOffset+|     choices [id]+|       <branch>+|       | push id+|       | ret+|       <default>+|         fail+call name_1+lift ($)+join_55:+| lift ($)+| ret+catchFail+  <try>+  | catchFail+  |   <try>+  |   | pushInput+  |   | read+  |   | pop+  |   | popFail+  |   | loadInput+  |   | fail+  |   <handler>+  |     loadInput+  |     push ()+  |     popFail+  |     refJoin join_55+  <handler>+    pushInput+    lift InstrPureSameOffset+    choices [id]+      <branch>+      | fail+      <default>+        fail
+ test/Golden/Machine/many-char-fail.dump view
@@ -0,0 +1,25 @@+push ((flip ($)) (const Haskell) . ((.) . (const . (flip ($)) Haskell)))+name_1:+| catchFail+|   <try>+|   | push ((.) . (cons . const Haskell))+|   | read+|   | lift ($)+|   | call name_1+|   | lift ($)+|   | popFail+|   | ret+|   <handler>+|     pushInput+|     lift InstrPureSameOffset+|     choices [id]+|       <branch>+|       | push id+|       | ret+|       <default>+|         fail+call name_1+lift ($)+read+lift ($)+ret
+ test/Golden/Machine/unit-unit.dump view
@@ -0,0 +1,9 @@+push (const id)+name_1:+| push ()+| ret+call name_1+lift ($)+call name_1+lift ($)+ret
+ test/Golden/Machine/unit.dump view
@@ -0,0 +1,2 @@+push ()+ret
+ test/Golden/Parser/alt-char-fail.dump view
@@ -0,0 +1,1 @@+ParsingErrorStandard {parsingErrorOffset = 0, parsingErrorUnexpected = Just 'c', parsingErrorExpecting = fromList [ErrorItemToken 'a',ErrorItemToken 'b']}
+ test/Golden/Parser/alt-char-fail.txt view
@@ -0,0 +1,1 @@+c
+ test/Golden/Parser/alt-char-try-fail.txt view
@@ -0,0 +1,1 @@+c
+ test/Golden/Parser/alt-left.dump view
@@ -0,0 +1,1 @@+"aa"
+ test/Golden/Parser/alt-left.txt view
@@ -0,0 +1,1 @@+aa
+ test/Golden/Parser/alt-right-try.dump view
@@ -0,0 +1,1 @@+"ab"
+ test/Golden/Parser/alt-right-try.txt view
@@ -0,0 +1,1 @@+ab
+ test/Golden/Parser/alt-right.dump view
@@ -0,0 +1,1 @@+ParsingErrorStandard {parsingErrorOffset = 1, parsingErrorUnexpected = Just 'b', parsingErrorExpecting = fromList [ErrorItemToken 'a']}
+ test/Golden/Parser/alt-right.txt view
@@ -0,0 +1,1 @@+ab
+ test/Golden/Parser/char.dump view
@@ -0,0 +1,1 @@+'a'
+ test/Golden/Parser/char.txt view
@@ -0,0 +1,1 @@+a
+ test/Golden/Parser/eof-fail.dump view
@@ -0,0 +1,1 @@+ParsingErrorStandard {parsingErrorOffset = 0, parsingErrorUnexpected = Just 'a', parsingErrorExpecting = fromList [ErrorItemEnd]}
+ test/Golden/Parser/eof-fail.txt view
@@ -0,0 +1,1 @@+a
+ test/Golden/Parser/eof.dump view
@@ -0,0 +1,1 @@+()
+ test/Golden/Parser/eof.txt view
+ test/Golden/Parser/left-right.txt view
@@ -0,0 +1,1 @@+aa
+ test/Golden/Parser/many-char-eof.dump view
@@ -0,0 +1,1 @@+ParsingErrorStandard {parsingErrorOffset = 3, parsingErrorUnexpected = Just 'a', parsingErrorExpecting = fromList [ErrorItemToken 'r',ErrorItemEnd]}
+ test/Golden/Parser/many-char-eof.txt view
@@ -0,0 +1,1 @@+rrra
+ test/Golden/Parser/many-char-fail.dump view
@@ -0,0 +1,1 @@+ParsingErrorStandard {parsingErrorOffset = 4, parsingErrorUnexpected = Just 'c', parsingErrorExpecting = fromList [ErrorItemToken 'a',ErrorItemToken 'b']}
+ test/Golden/Parser/many-char-fail.txt view
@@ -0,0 +1,1 @@+aaaac
+ test/Golden/Parser/many-char.dump view
@@ -0,0 +1,1 @@+"aaaaa"
+ test/Golden/Parser/many-char.txt view
@@ -0,0 +1,1 @@+aaaaa
+ test/Golden/Parser/string.dump view
@@ -0,0 +1,1 @@+"ab"
+ test/Golden/Parser/string.txt view
@@ -0,0 +1,1 @@+ab