Beefy Boxes and Bandwidth Generously Provided by pair Networks
"be consistent"
 
PerlMonks  

Re: Gathering experiences with Parse::RecDescent

by amw1 (Friar)
on Oct 20, 2005 at 15:57 UTC ( [id://501713]=note: print w/replies, xml ) Need Help??


in reply to Gathering experiences with Parse::RecDescent

I used P:RD about a year ago to parse an intermediate 'language' that was generated by a web. I parsed the language into a datastructure so I could re-represent the clauses the user entered when they went back to edit the block they created. We then took the intermediate language and used lisp to parse and execute the appropriate stuff. It took me a few weeks to get to the point where I was comfortable with it, but overall I don't remember any real pain. (I had never written a true parser before so there was a bunch of learning that I needed to do during that time)

I haven't had the opportunity to use it again but there are a number of other people in my office who have used it to do various tasks. I have been able to support them reasonably well. With only one project using it, I doubt I'd say I attained mastery, but I am confident that I can use it again with little effort if the need should arise.

I am far from scared of going back. I've been wanting another project that needs to use P:RD. I found that I really enjoyed writing the grammar.

One tip I would offer, if speed matters stay away from the lookahead stuff. (In my experience the lookaheads seemed make the parsing crawl. If I were better at language design I could have probabbly avoided the issue alltogether.)

  • Comment on Re: Gathering experiences with Parse::RecDescent

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others chanting in the Monastery: (7)
As of 2024-04-25 16:15 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found