[Haskell-cafe] concurrent definitions with parsec
Brandon S. Allbery KF8NH
allbery at ece.cmu.edu
Mon Mar 10 10:03:21 EDT 2008
On Mar 10, 2008, at 9:55 , Zsolt SZALAI wrote:
>
> Er? Refactoring the grammar like that is the clean and preferred
> way. But if you insist, use the try combinator.
>
> Oh, all right, i was trying to be loyal to the BNF in standard.
BNF doesn't necessarily apply cleanly to all types of parsers.
Compare LALR(1) parsers (yacc, happy) to LL(1) (ideal Parsec
grammars). You can use the try combinator to write such grammars,
but it imposes a potentially large amount of overhead because it may
have to hold on to a large parse tree that might end up being thrown
out.
--
brandon s. allbery [solaris,freebsd,perl,pugs,haskell] allbery at kf8nh.com
system administrator [openafs,heimdal,too many hats] allbery at ece.cmu.edu
electrical and computer engineering, carnegie mellon university KF8NH
More information about the Haskell-Cafe
mailing list