Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Appel Book : Modern Compiler Implementation In C ??

105 views
Skip to first unread message

Sahan Amarasekera

unread,
Nov 11, 2000, 3:00:00 AM11/11/00
to
I am a complete beginner to compiler construction. I was wondering
whether the book Modern Compiler Implementation In C (the 1998, later
version) by Andrew W. Appel is a good book for me to begin with.

I have read the "comp.compilers monthly message and Frequently Asked
Questions" message and seen the review by Quinn Tyler Jackson that
seems to suggest it is good for beginners. I was just wondering : What
does everyone else think ?

Thanks.

--
Sahan Amarasekera

Lieven Marchand

unread,
Nov 14, 2000, 3:00:00 AM11/14/00
to
Sahan Amarasekera <sah...@my-deja.com> writes:

[ how is the Appel Book for beginners? ]

I think the book strikes a nice balance between theory and
practice. The theory behing many things get explained without being
overly formal and also gets demonstrated in working code. If you
follow the exercises you end up with a working compiler. There's also
a nice balance between the subject. I've always found parsing gets too
much attention in the Dragon Book.

One caveat though. I've read the Java version and the Java code shown
is disguised ML. I don't know whether the C version is the same, but
in that case I would recommend the ML version proper. It seems to be
endemic that authors don't bother to write the other language versions
of their books in idiomatic code. Sedgewick's Algorithms in C is very
Pascal-ish and Numerical Recipes is only understandable in Fortran.

Mark Scott

unread,
Nov 14, 2000, 3:00:00 AM11/14/00
to
Sahan Amarasekera <sah...@my-deja.com> wrote:
: I am a complete beginner to compiler construction. I was wondering

The Appel book is used at Edinburgh University for a 3rd year course
in Compiling Techniques, with the implementation of a compiler for a
subset of Tiger being the coursework. When I did the course last
year I found the book confusing in parts, and its referal to tables
and figures some pages away a constant irritation.

However, I did find it informative despite its confusing nature.
Some of this confusion may be because the C was not written by
Appel - the book was orignally ML, and then translated to C and Java,
so the C and Java are not great examples of how to code in those
languages (the Java version uses few OO programming techniques).
--
Mark Scott
4th Year Computer Science
Edinburgh University

Roger Lindsj|

unread,
Nov 17, 2000, 3:00:00 AM11/17/00
to
>Sahan Amarasekera <sah...@my-deja.com> wrote:
>: I am a complete beginner to compiler construction. I was wondering
>: whether the book Modern Compiler Implementation In C (the 1998, later
>: version) by Andrew W. Appel is a good book for me to begin with.

Mark Scott <m...@dcs.ed.ac.uk> wrote:
>However, I did find it informative despite its confusing nature.
>Some of this confusion may be because the C was not written by
>Appel - the book was orignally ML, and then translated to C and Java,
>so the C and Java are not great examples of how to code in those
>languages (the Java version uses few OO programming techniques).

I used this book when taking a compiler course, and found it quite
good. I had enough examples to get you started, and enough theory to
enable you to rewrite the (quite ugly) java code to more "proper"
java.

Roger Lindsjö

Malcolm Crowe

unread,
Jan 26, 2001, 4:47:57 PM1/26/01
to
I'm working on a C# version, using my C# compiler tools.
I am getting the students to buy the Java version of Appel's book, and
supplying them with the C# tools and C# versions of Appel's code fragments.
Let me know if you want a copy. The tools are at the link below.
Best wishes
Malcolm
http://cis.paisley.ac.uk/crow-ci0/CSTools.zip

0 new messages