On Tue, Jul 30, 2002 at 11:55:54PM +0900, Justin Johnson wrote: > > After several rewrites of my GC memory code and implementing most of the > code for Ruby runtime, I'm now posed with the issues of parsing and language > specification. All the class/module/object/methods/vars code is in place. > It's cool to see the arms and legs working...now to put the heart in place! > > Goals: > 1. Use Bison to generate parser - if I can't integrate that well with C++, > use PCCTS instead. Have you considered using Spirit (http://spirit.sourceforge.net/)? Spirit lets you write your EBNF grammar as C++ code, by using template tricks and overloaded operators. Very nifty. > I'm hoping that by creating a solid C++ version, I've improved the API and > reduced the number of programming errors possible through safer type > checking etc. What exactly do you mean by "safer type checking"? This statement can mean lots of different things. Also, don't forget to consider exception-safety. It's important in Ruby, since almost any function can raise an exception. It would be even more important in a C++ implementation of Ruby. Paul