symantic-parser-0.2.1.20210803: tests/Golden/Grammar/OptimizeGrammar/G13.expected.txt
lets
+ let name
| ` <*>
| + pure (\x_0 -> GHC.Tuple.())
| ` chainPost
| + pure GHC.Tuple.()
| ` <*>
| + pure (\x_0 -> \x_1 -> x_1)
| ` satisfy (\c_0 -> GHC.Classes.not (('<' GHC.Classes.== c_0) GHC.Classes.|| (('>' GHC.Classes.== c_0) GHC.Classes.|| (('+' GHC.Classes.== c_0) GHC.Classes.|| (('-' GHC.Classes.== c_0) GHC.Classes.|| ((',' GHC.Classes.== c_0) GHC.Classes.|| (('.' GHC.Classes.== c_0) GHC.Classes.|| (('[' GHC.Classes.== c_0) GHC.Classes.|| ((']' GHC.Classes.== c_0) GHC.Classes.|| GHC.Types.False)))))))))
+ let name
| ` chainPre
| + <*>
| | + <*>
| | | + pure (\x_0 -> \x_1 -> (GHC.Types.:) x_0)
| | | ` conditional
| | | + condition
| | | | ` look
| | | | ` satisfy (\x_0 -> GHC.Types.True)
| | | + default
| | | | ` failure
| | | + branch (\x_0 -> (\x_1 -> \x_2 -> (GHC.Classes.==) x_1 x_2) '<' x_0)
| | | | ` <*>
| | | | + pure (\x_0 -> Parsers.Brainfuck.Types.Backward)
| | | | ` satisfy (\x_0 -> GHC.Types.True)
| | | + branch (\x_0 -> (\x_1 -> \x_2 -> (GHC.Classes.==) x_1 x_2) '>' x_0)
| | | | ` <*>
| | | | + pure (\x_0 -> Parsers.Brainfuck.Types.Forward)
| | | | ` satisfy (\x_0 -> GHC.Types.True)
| | | + branch (\x_0 -> (\x_1 -> \x_2 -> (GHC.Classes.==) x_1 x_2) '+' x_0)
| | | | ` <*>
| | | | + pure (\x_0 -> Parsers.Brainfuck.Types.Increment)
| | | | ` satisfy (\x_0 -> GHC.Types.True)
| | | + branch (\x_0 -> (\x_1 -> \x_2 -> (GHC.Classes.==) x_1 x_2) '-' x_0)
| | | | ` <*>
| | | | + pure (\x_0 -> Parsers.Brainfuck.Types.Decrement)
| | | | ` satisfy (\x_0 -> GHC.Types.True)
| | | + branch (\x_0 -> (\x_1 -> \x_2 -> (GHC.Classes.==) x_1 x_2) ',' x_0)
| | | | ` <*>
| | | | + pure (\x_0 -> Parsers.Brainfuck.Types.Input)
| | | | ` satisfy (\x_0 -> GHC.Types.True)
| | | + branch (\x_0 -> (\x_1 -> \x_2 -> (GHC.Classes.==) x_1 x_2) '.' x_0)
| | | | ` <*>
| | | | + pure (\x_0 -> Parsers.Brainfuck.Types.Output)
| | | | ` satisfy (\x_0 -> GHC.Types.True)
| | | ` branch (\x_0 -> (\x_1 -> \x_2 -> (GHC.Classes.==) x_1 x_2) '[' x_0)
| | | ` <*>
| | | + <*>
| | | | + <*>
| | | | | + <*>
| | | | | | + pure (\x_0 -> \x_1 -> \x_2 -> \x_3 -> Parsers.Brainfuck.Types.Loop x_2)
| | | | | | ` satisfy (\x_0 -> GHC.Types.True)
| | | | | ` ref name
| | | | ` rec name
| | | ` satisfy ((GHC.Classes.==) ']')
| | ` ref name
| ` pure GHC.Types.[]
` <*>
+ <*>
| + pure (\x_0 -> \x_1 -> GHC.Show.show x_1)
| ` ref name
` ref name