If you use the Language and Token modules, Parsec gives you something
close to a lexer / parser separation _but_ you can drop down to
character level parsers if you want to - this is very handy. There are
some caveats though - for instance, the number parsers from the Token
module follow Haskell's lexical syntax but you can override them if
necessary.

You can also write separate parsers this is covered in the (pdf)
Parsec manual available from Daan Leijen's old home page, however I
usually avoid this as it seems rather cumbersome.

Happy / Alex seems generally much faster than Parsec, I would imagine
the combination of Happy and Parsec to inherit the speed of Parsec.

Personally I prefer Parsec, uu-parsing is also nice but it didn't have
the equivalent of Parsec's Token parsers so it was always a bit less
convenient. However, if I'm starting from an LR grammar I'll use Happy
/ Alex.
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to