[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: gnubol: SableCC vs. other parser generators



Markus,

Laura officially announced the decision, but I tended to agree
with the reasoning.

1. Bison exists and is supported and maintained.
2. Bison's performance is predictable - no time/space 'surprises'
3. Bison can do the job (with some help).
3a. Lets stop messing around and do it!

There is a fourth. Noone volunteered to write the whole thing in
any other tool than bison. And I did it in bison, so we had a
parser (for the nucleus anyway) and no real reason to rewrite it.

I had a close look at antlr and btyacc.

antlr is a recursive descent parser and would also have needed
considerable help - it has a lot of add-ons to make it more
powerful but they made it confusing to me. I did not find the
doco very useful whereas bison has an excellent manual. The
author had lost interest in C++ and had written a new version in
Java which is too slow IMO.

btyacc seemed capable of doing the job but only supports C++. I
do not like C++ (I do not claim this is rational, but I do
dislike it). I sent patches to the author to allow it to support
C but the author did not respond. This made me feel support may
be an issue. Also with backtracking time/space predictability is
a problem and so is getting decent error messages. 

Since then I found out that the Ada compiler in GCC was all hand
coded - not bison/flex or similar. However a word count of their
source gives you a very large positive number. I do think tools
are the way to go.

Hope this helps.

Tim Josling

Markus Pilzecker wrote:
> 
> Hello,
> 
> I'm looking pretty from outside onto this project, so it may well be, that my
> question has already been answered in some detail elsewhere:
> 
> I read about times, when the parser generator chosen had been changed from
> Antlr to SableCC, although now, it seems to be bison.
> 
> Can somebody give me some links to what motivated the respective movements
> from Antlr to SableCC to bison??
> 
> Thanks,
> 
>    Markus
> 
> PS:  Would you please answer Cc: mp@dfki.de, since I'm not on this list.
> 
> --

--
This message was sent through the gnu-cobol mailing list.  To remove yourself
from this mailing list, send a message to majordomo@lusars.net with the
words "unsubscribe gnu-cobol" in the message body.  For more information on
the GNU COBOL project, send mail to gnu-cobol-owner@lusars.net.