on a practical basis when would want to use treetop parse over using
regular expressions with .scan()? …
in the wicki ‘treetop (PEP)’ subject/submission… it would seem
that using regular expression would be a better tool!
On Jan 28, 8:27 am, David R. [email protected] wrote:
on a practical basis when would want to use treetop parse over using
regular expressions with .scan()? …
in the wicki ‘treetop (PEP)’ subject/submission… it would seem
that using regular expression would be a better tool!
I don’t have enough experience to be sure, but my guess is:
- If you can’t do it in Regexp (e.g. recursive nested parens), use
something like Treetop. - If the overall solution using Regexp alone becomes too large or
unmaintainable (which may be the same thing), use something like
Treetop. (Or you’re laying a foundation that you think may become
large in the future.) - Otherwise, Regexp will be less overhead and, I suspect (but don’t
know yet) faster.
I’m currently porting my OWLScribble[1] library from using (my own
strscan/regex state-based) TagTreeScanner[2] parser to use Treetop
instead. My goal is to learn Treetop, create a more readable and
maintainable syntax description, and also to be able to benchmark and
compare the performance of the two implementations.
[1] http://rubyforge.org/projects/owlscribble/
[2] http://rubyforge.org/projects/tagtreescanner/