[Baypiggies] Mini languages

Ken Seehart ken at seehart.com
Mon May 8 01:10:06 CEST 2006

Never mind, this is really trivial.  Any C++ code that is outside my 
"cellclass" block is passed on unmodified. The only recursion I have to 
deal with in my grammar is a C++ function body.  And since I don't 
actually need to process the function body, I just need to recursively 
scan for a pair of matching braces (not rocket science).  Everything 
else is regular expressions.  I definitely don't need an LALR parser for 
this :-)
So I don't have any further questions.

Thanks Dennis and Dennis for your comments.

- Ken

Ken Seehart wrote:

> I want to implement a simple language translator (a superset of C++), 
> but I haven't done anything of this kind since college (a couple 
> decades ago).  I would like to use python tools as much as possible.
> NICL code -> [C++ preprocessor (gcc)] -> [NICL translator] -> [C++ 
> compiler (gcc)] -> object code
> The translator needs to be able to parse special non-c++ syntax to 
> generate c++, and leave other code intact.
> More documentation on my project here:
> http://www.seehart.com/neuralintegrator.com/documentation/ni_book/defining_cell_types.st
> I could almost get by with just a python script using regular 
> expressions (my grammar is simple enough), but I need to know a 
> certain amount of contextual information. E.g., if I am parsing 
> "cellclass mycell { ... }", the contents between the braces must be 
> processed accordingly.  This means I have to know when I reach the 
> closing brace (which I can't do with regular expressions).  However, 
> I'm sure I could do a prototype this way, using the assumption that 
> the a closing brace on a class matches "^};", but that would be just 
> plain sloppy :-)
> So I think one way or another I'm stuck with implementing an LALR parser.
> I'm wondering if there is anyone in this community with experience 
> doing this kind of thing.
> - Ken Seehart
>Baypiggies mailing list
>Baypiggies at python.org

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.python.org/pipermail/baypiggies/attachments/20060507/74f77076/attachment.htm 

More information about the Baypiggies mailing list