Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical

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.

Comment on Re: Re: evolving an OO design

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 romping around the Monastery: (13)
As of 2015-12-01 13:08 GMT
Find Nodes?
    Voting Booth?

    My keyboard shows this many letters:

    Results (10 votes), past polls