SPUG: Looking for info on developing programming language parser
/ lint program
sthoenna at efn.org
Sat Nov 29 21:42:58 CST 2003
On Fri, Nov 28, 2003 at 06:10:53PM -0800, "Michael R. Wolf" <MichaelRWolf at att.net> wrote:
> Chris Wilkes <cwilkes-spug at ladro.com> writes:
> > On Tue, Nov 25, 2003 at 11:03:34AM -0800, david.ward at philips.com wrote:
> >> Can anyone give me any recommendations as to books, module documentation,
> >> etc that might be helpful on the construction of programming language
> >> parsers and / or lint programs?
> > Have you looked into the perl module Parse::RecDescent?
> > http://search.cpan.org/src/DCONWAY/Parse-RecDescent-1.94/tutorial/tutorial.html
> > http://search.cpan.org/~tbone/Parse-RecDescent-FAQ-3.25/FAQ.pm
> > and from the FAQ:
> > http://www.urth.org/~metaperl/domains/semantic-elements.com/perl/prd/dans-blog/000235.html
> "Principles of Compiler Design", (AKA "The Dragon Book") by Al Aho and
> Jeff Ullman was the standard for years. It's out of print, but
> probably available from a library or a colleague. It's not "modern",
> but it does discuss recursive design compilers, the state of the art
> for a long time.
The newer edition is "Compilers: Priciples, Techniques, and Tools", by
Aho, Ullman, and Ravi Sethi, 1986. From the back cover: "The new
dragon presents the basic material featured in the old dragon, while
also delving into recent developments in the field. Features of the
new dragon include: Pragmatics of compiler development; More on
syntax-directed translation, type checking, run-time organization,
automatic code generation, and code optimization; Wide variety of
graded problems and exercises."
A quick read through the second chapter will give a basic foundation
for making a parser/lint program.
More information about the spug-list