`type_` parser seems to have exponential complexity
Description
type_
parser seems to have exponential complexity.
Steps to reproduce
Run
stack repl morley:lib
...
λ import Michelson.Parser as P
λ P.parseNoEnv P.type_ "" "(pair nat (pair nat (pair nat (pair nat (pair nat (pair nat (pair nat (pair nat (pair nat (pair nat (pair nat (pair nat (pair nat (pair nat (pair nat (pair nat nat))))))))))))))))"
# or
λ P.parseNoEnv P.type_ "" "(pair nat (pair nat (pair nat (pair nat (pair nat (pair nat (pair nat (pair nat (pair nat (pair nat (pair nat (pair nat))))))))))))"
And watch repl to eat your RAM.
Expected behaviour
The parser works reasonable time and doesn't consume all RAM :pled:
Actual behaviour
Parser works for eternity and can cause OOM.