[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [DotGNU] dfa2csharp end result
From: |
Adam Ballai |
Subject: |
Re: [DotGNU] dfa2csharp end result |
Date: |
Wed, 21 May 2003 17:59:50 -0700 |
User-agent: |
Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.2b) Gecko/20030516 |
Gopal V wrote:
If memory serves me right, Gopal V wrote:
Does generate working code , though beauty wise .. I could do far
better ... And the command line parts segfault when given no params
etc... it's a 3:15 AM status snapshot ... be gentle :-)
I've cleaned it up a bit ... added a couple more of new transition
modes ... (WHITESPACE, EPSILON) ... cleaned up the code printing routines.
Great!
Better collision detection -- for the whole unicode range , rather than
for the 256 byte range ..
Fixed up inlining of single connected nodes ... ie if a node is connected
from only one point , do not 'goto' but use it there itself , reduced number
of jumps ... If there is a loop back into the inlineable node, ignore
inlining ..
Unconnected nodes are not generated , and neither are their action and
transition code blocks ...
Thats a tricky thing for xml documents. Maybe some error reporting on
bad xml syntax could be generated in this case.
--debug option which generates Debug.WriteLine() of the various operations
taking place ... (will need -lSystem -DTRACE to compile C# o/p )
Line numbers are generated for the %{ %} inline code fragments using the
original file , while those of the other code are generated with respect
to the output file .. (#line)
Pulled out most of command line handling from pnet , the configure
script off treecc/pnet and made it an independent project (since
Rhys didn't like the idea of this moving into pnet) ..
Well, as rhys has said before just do it, so I'll get something working
to parse Xml with the tool.
A Rot13 convertor is provided as a nice example for the stuff ...
if anybody is interested, I'll write out the language docs, otherwise
this is slowly going to fade out :-)
I hope this doesn't, and I'm sure this is useful to any developer just
as yacc or flex is.
-adam