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