Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris

Re: Re: evolving an OO design

by Schemer (Scribe)
on Dec 04, 2002 at 04:10 UTC ( #217416=note: print w/replies, xml ) Need Help??

in reply to Re: evolving an OO design
in thread evolving an OO design

.. Parse::RecDescent provides a tool to build complete grammars, and according to TheDamian, most of the capabilities of this module are going into the Perl 6 language.

Just for your information there are types of grammar a recursive descent parser (like Parse::RecDescent) can't parse. Among other conditions (which I don't remember quite clearly) a left-recursive grammar can't be parsed by recdescent. A LR(n) parser would be more useful to write a grammar for a full language.

The strenght of Parse::RecDescent is in its ease of use to parse simple grammars, which is most of the time enough for general needs.

And from what I think I've understood from what I've read (parse that!), Perl 6 will be even more powerful on parsing grammars than Parse::RecDescent, which may make it a really good tool for prototyping small languages.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://217416]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others exploiting the Monastery: (5)
As of 2021-04-19 17:46 GMT
Find Nodes?
    Voting Booth?

    No recent polls found