I used
Parse::RecDescent mainly for the
formula parser in Spreadsheet::WriteExcel and I found it relatively easy to learn and use.
The learning phase was greatly helped by the 40 demo programs and the tutorial. The usage phase was helped by the combination of lexer and parser in one.
However, it is very slow. The (vaguely) promised Parse::FastDescent never materialised and probably never will given the enhanced parsing features in Perl6 regexes.
In the end I moved/am moving to Parse::Yapp since it is faster and having a Yacc-like grammar is useful for porting to other languages.
If you are looking for other real-life experiences with P::RD then this article gives some practical observations in relation to using Parse::RecDescent, Parse::Yapp, Perl-byacc and regular expressions in a real project.
--
John.
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
| |
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.