Related articles |
---|
Lex and yacc debugger design pickerr6@cs.man.ac.uk (Robert Frederick Pickering) (1998-10-17) |
Re: Lex and yacc debugger design qjackson@wave.home.com (Quinn Tyler Jackson) (1998-10-18) |
Re: Lex and yacc debugger design thetick@magelang.com (Scott Stanchfield) (1998-10-18) |
Re: Lex and yacc debugger design pickerr6@cs.man.ac.uk (Robert Frederick Pickering) (1998-10-22) |
Re: Lex and yacc debugger design thetick@magelang.com (Scott Stanchfield) (1998-11-06) |
From: | "Scott Stanchfield" <thetick@magelang.com> |
Newsgroups: | comp.compilers |
Date: | 6 Nov 1998 15:56:48 -0500 |
Organization: | Pacific Bell Internet Services |
References: | 98-10-105 98-10-136 |
Keywords: | debug |
I'd say "don't use lex and yacc" to be honest. There are several
other tools out there that are much easier to deal with (though not as
widespread in use.)
My compiler prof at Hopkins said "use whatever you want" and I started
with lex/yacc, then noticed a post about PCCTS on this newsgroup. I
tried it and loved it.
Personally I would recommend ANTLR 2.x (http://www.antlr.org) and if
you're looking for a way to visualize the parsing, I have a Visual
Debugger for it as well (http://www.jguru.com/thetick/parseview).
We're working on ideas for a static analyzer (to help trace conflicts).
The biggest problems you're gonna have are "what are these
conflicts???". ANTLR/PCCTS are LL which makes the grammar writing
more difficult, but the generated code is readable. Yacc being LALR
(of course you know that) makes the grammar writing easier, but the
generated code might as well be hieroglyphics.
There is a grammar browser for PCCTS that might help -- see
http://www-ms.cc.ntu.edu.tw/~r6724039/pccts.htm
As far as compile-time help, Visual Parse++ might be a good one to look
at, but it's commercial.
--
-- Scott
Scott Stanchfield Santa Cruz, CA USA
thetick@magelang.com http://www.jguru.com/thetick
>These use often have difficulties getting code to compile and
>understanding the frankly rubbish error that are given. I know I did
>:) Which is why asked about error messages in my original post.
Return to the
comp.compilers page.
Search the
comp.compilers archives again.