[Haskell-cafe] Monadic parser vs. combinator parser
Doaitse Swierstra
doaitse at swierstra.net
Sun Feb 3 00:08:31 CET 2013
On Jan 31, 2013, at 10:47 , Jan Stolarek <jan.stolarek at p.lodz.pl> wrote:
> Thanks for replies guys. I indeed didn't notice that there are monads and applicatives used in
> this parser. My thought that monadic parsers are more verbose came from Hutton's paper where the
> code is definitely less readable than in example I provided.
>
> There is one more thing that bothers me. It is easy to write a parser that returns Nothing when
> parsing fails. But I can't figure out a way to add meaningful error messages so that the user
> knows where did the parsing fail. I experimented with using Either so that I can use Left to pass
> error messages but this turned out to be inflexible and clutered the code. I will be greatful for
> any ideas.
Use the uu-parsinglib library, which provides error messages, repairs your errors and using its idioms definition you can even write:
inParens c = iI '(' c ')' Ii
I think you cannot get it shorter and with more functionality.
Doaitse
> Janek
>
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
More information about the Haskell-Cafe
mailing list