From: joel de guzman (joel_at_[hidden])
Date: 2001-05-26 20:07:33
I borrowed a neat optimization trick from Dr. Conway albeit in
a different flavor. He caches the current stream position of a
matched string and uses that in future tests. What I do now is
hash the first 2 characters of a string. Now I am searching for
a nice *fast* hash function with low collision. In fact I can use
his trick in addition to mine.
I am challenged by the obstacles of RD. But I am in love with RD.
and I agree with Bjarne Stroustrup:
"Examples of designs that meet most of the criteria for "goodness"
(easy to understand, flexible, efficient) are a recursive descent parser,
which is traditional procedural code. [snip]"
I believe there's more we can squeeze from RD. The abundance
of Spirit's operators is one avenue I have yet to explore. I believe
operators and directives will help overcome RDs weaknesses.
I imagine a directive that will parse a rule as LR for example.
Hey, thanks a lot, always.
Joel de Guzman
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk