machine: fix recursion ending
[haskell/symantic-parser.git] / test / Golden / Grammar / ViewGrammar / G13.expected.txt
index bcb2e13bd579da2685e469979b4d2696d8b4fcc1..3ff8908f20ef819a6c14f1f0d36cacf1cb40a30a 100644 (file)
-<*>
-+ <*>
-| + <*>
-| | + pure (\u1 -> (\u2 -> u1))
-| | ` pure (\u1 -> u1)
-| ` def name_1
-|   ` <*>
-|     + <*>
-|     | + <*>
-|     | | + pure (\u1 -> (\u2 -> u1))
-|     | | ` pure (\u1 -> u1)
-|     | ` <*>
-|     |   + <*>
-|     |   | + pure ((\u1 -> (\u2 -> (\u3 -> (u1 u3) u2))) (\u1 -> (\u2 -> u1 u2)))
-|     |   | ` pure Term
-|     |   ` def name_4
-|     |     ` <|>
-|     |       + <*>
-|     |       | + <*>
-|     |       | | + pure (\u1 -> (\u2 -> (\u3 -> u1 (u2 u3))))
-|     |       | | ` <*>
-|     |       | |   + <*>
-|     |       | |   | + pure (\u1 -> (\u2 -> (\u3 -> (u1 u3) u2)))
-|     |       | |   | ` pure (\u1 -> (\u2 -> u1))
-|     |       | |   ` satisfy
-|     |       | ` rec name_4
-|     |       ` pure (\u1 -> u1)
-|     ` pure Term
-` def name_2
+lets
++ let <hidden>
+| ` <*>
+|   + <*>
+|   | + <*>
+|   | | + pure (\x_0 -> \x_1 -> x_0)
+|   | | ` pure (\x_0 -> x_0)
+|   | ` chainPost
+|   |   + pure GHC.Tuple.()
+|   |   ` <*>
+|   |     + <*>
+|   |     | + pure (\x_0 -> \x_1 -> \x_2 -> x_0 x_2 x_1)
+|   |     | ` pure (\x_0 -> \x_1 -> x_0)
+|   |     ` satisfy
+|   ` pure GHC.Tuple.()
++ let <hidden>
+| ` chainPre
+|   + <*>
+|   | + pure (GHC.Types.:)
+|   | ` <*>
+|   |   + <*>
+|   |   | + pure (\x_0 -> \x_1 -> x_0)
+|   |   | ` conditional
+|   |   |   + look
+|   |   |   | ` satisfy
+|   |   |   + branches
+|   |   |   | + <*>
+|   |   |   | | + <*>
+|   |   |   | | | + pure (\x_0 -> \x_1 -> x_0)
+|   |   |   | | | ` pure Parsers.Brainfuck.Types.Backward
+|   |   |   | | ` satisfy
+|   |   |   | + <*>
+|   |   |   | | + <*>
+|   |   |   | | | + pure (\x_0 -> \x_1 -> x_0)
+|   |   |   | | | ` pure Parsers.Brainfuck.Types.Forward
+|   |   |   | | ` satisfy
+|   |   |   | + <*>
+|   |   |   | | + <*>
+|   |   |   | | | + pure (\x_0 -> \x_1 -> x_0)
+|   |   |   | | | ` pure Parsers.Brainfuck.Types.Increment
+|   |   |   | | ` satisfy
+|   |   |   | + <*>
+|   |   |   | | + <*>
+|   |   |   | | | + pure (\x_0 -> \x_1 -> x_0)
+|   |   |   | | | ` pure Parsers.Brainfuck.Types.Decrement
+|   |   |   | | ` satisfy
+|   |   |   | + <*>
+|   |   |   | | + <*>
+|   |   |   | | | + pure (\x_0 -> \x_1 -> x_0)
+|   |   |   | | | ` pure Parsers.Brainfuck.Types.Input
+|   |   |   | | ` satisfy
+|   |   |   | + <*>
+|   |   |   | | + <*>
+|   |   |   | | | + pure (\x_0 -> \x_1 -> x_0)
+|   |   |   | | | ` pure Parsers.Brainfuck.Types.Output
+|   |   |   | | ` satisfy
+|   |   |   | ` <*>
+|   |   |   |   + <*>
+|   |   |   |   | + pure (\x_0 -> \x_1 -> x_0)
+|   |   |   |   | ` <*>
+|   |   |   |   |   + <*>
+|   |   |   |   |   | + <*>
+|   |   |   |   |   | | + pure (\x_0 -> \x_1 -> x_0)
+|   |   |   |   |   | | ` pure (\x_0 -> x_0)
+|   |   |   |   |   | ` <*>
+|   |   |   |   |   |   + <*>
+|   |   |   |   |   |   | + pure (\x_0 -> \x_1 -> x_0)
+|   |   |   |   |   |   | ` satisfy
+|   |   |   |   |   |   ` ref <hidden>
+|   |   |   |   |   ` <*>
+|   |   |   |   |     + pure Parsers.Brainfuck.Types.Loop
+|   |   |   |   |     ` rec <hidden>
+|   |   |   |   ` <*>
+|   |   |   |     + <*>
+|   |   |   |     | + pure (\x_0 -> \x_1 -> x_0)
+|   |   |   |     | ` pure ']'
+|   |   |   |     ` satisfy
+|   |   |   ` failure
+|   |   ` ref <hidden>
+|   ` pure GHC.Types.[]
+` <*>
+  + pure GHC.Show.show
   ` <*>
-    + def name_3
-    | ` <|>
-    |   + <*>
-    |   | + <*>
-    |   | | + pure (\u1 -> (\u2 -> (\u3 -> u1 (u2 u3))))
-    |   | | ` <*>
-    |   | |   + pure cons
-    |   | |   ` <*>
-    |   | |     + <*>
-    |   | |     | + pure (\u1 -> (\u2 -> u1))
-    |   | |     | ` conditional
-    |   | |     |   + look
-    |   | |     |   | ` satisfy
-    |   | |     |   + bs
-    |   | |     |   | + <*>
-    |   | |     |   | | + <*>
-    |   | |     |   | | | + pure (\u1 -> (\u2 -> u1))
-    |   | |     |   | | | ` pure Term
-    |   | |     |   | | ` satisfy
-    |   | |     |   | + <*>
-    |   | |     |   | | + <*>
-    |   | |     |   | | | + pure (\u1 -> (\u2 -> u1))
-    |   | |     |   | | | ` pure Term
-    |   | |     |   | | ` satisfy
-    |   | |     |   | + <*>
-    |   | |     |   | | + <*>
-    |   | |     |   | | | + pure (\u1 -> (\u2 -> u1))
-    |   | |     |   | | | ` pure Term
-    |   | |     |   | | ` satisfy
-    |   | |     |   | + <*>
-    |   | |     |   | | + <*>
-    |   | |     |   | | | + pure (\u1 -> (\u2 -> u1))
-    |   | |     |   | | | ` pure Term
-    |   | |     |   | | ` satisfy
-    |   | |     |   | + <*>
-    |   | |     |   | | + <*>
-    |   | |     |   | | | + pure (\u1 -> (\u2 -> u1))
-    |   | |     |   | | | ` pure Term
-    |   | |     |   | | ` satisfy
-    |   | |     |   | + <*>
-    |   | |     |   | | + <*>
-    |   | |     |   | | | + pure (\u1 -> (\u2 -> u1))
-    |   | |     |   | | | ` pure Term
-    |   | |     |   | | ` satisfy
-    |   | |     |   | ` <*>
-    |   | |     |   |   + <*>
-    |   | |     |   |   | + pure (\u1 -> (\u2 -> u1))
-    |   | |     |   |   | ` <*>
-    |   | |     |   |   |   + <*>
-    |   | |     |   |   |   | + <*>
-    |   | |     |   |   |   | | + pure (\u1 -> (\u2 -> u1))
-    |   | |     |   |   |   | | ` pure (\u1 -> u1)
-    |   | |     |   |   |   | ` <*>
-    |   | |     |   |   |   |   + <*>
-    |   | |     |   |   |   |   | + pure (\u1 -> (\u2 -> u1))
-    |   | |     |   |   |   |   | ` satisfy
-    |   | |     |   |   |   |   ` ref name_1
-    |   | |     |   |   |   ` <*>
-    |   | |     |   |   |     + pure Term
-    |   | |     |   |   |     ` rec name_2
-    |   | |     |   |   ` <*>
-    |   | |     |   |     + <*>
-    |   | |     |   |     | + pure (\u1 -> (\u2 -> u1))
-    |   | |     |   |     | ` pure ']'
-    |   | |     |   |     ` satisfy
-    |   | |     |   ` empty
-    |   | |     ` ref name_1
-    |   | ` rec name_3
-    |   ` pure (\u1 -> u1)
-    ` pure Term
+    + <*>
+    | + <*>
+    | | + pure (\x_0 -> \x_1 -> x_0)
+    | | ` pure (\x_0 -> x_0)
+    | ` ref <hidden>
+    ` ref <hidden>