Just Launched: You can now import projects and releases from Google Code onto SourceForge
We are excited to release new functionality to enable a 1-click import from Google Code onto the Allura platform on SourceForge. You can import tickets, wikis, source, releases, and more with a few simple steps. Read More
From: Eric M. Ludlam <eric@si...> - 2002-09-11 01:09:28
I checked in the file bison->wisent.el which has my simple regexp
translator in it. It seems to do an ok job. Unfortunately, I can't
test that assumption at the moment because the resultant 3000 line
file hangs my emacs when wisent kicks off a parse. I used
`toggle-debug-on-quit' and discovered that the lexer is actually
slurping up lots of time and not showing a progress bar. I waited
over 60 seconds before I got bored and killed it.
This caused me to go snoop some more in semantic-grammar.el with an
eye on the lexical analyzer. I have several questions about it:
* Why does semantic's grammar need such a complicated number regexp?
* Why does it need it's own symbol matcher? Why not use the
* Why is the comment-start-skip so complicated? This is used in the
lexer, and that complexity probably slows things down. Perhaps
semantic-lex-comment-regex could be specified with something
After wondering these things, I discovered the real problem.
The lexer actually had a progress hang as soon as it hit the valid
or any reference to .hush_warning. This lead me to wonder about
`wisent-lex-punctuation' which just sort of confused me when I tried
to understand its purpose.
In general, however, would it make sense to move this and others into
semantic-grammar.el or semantic-lex.el instead of wisent-bovine.el?
I know you explained some of these files' purpose in the past but I
don't remember. Perhaps we should check in a MANIFEST file to help
explain to each other.
Anyway, I've got some html hacking to do, so I'll examine this more
on another day.
Eric Ludlam: zappo@..., eric@...
Home: http://www.ludlam.net Siege: http://www.siege-engine.com
Emacs: http://cedet.sourceforge.net GNU: http://www.gnu.org