Related articles |
---|
Re: Compiler Construction in Ada crigler@osceola.cs.ucf.edu (1993-01-08) |
Re: Compiler Construction Learning (was... in Ada) jao@soc1.acpub.duke.edu (1993-01-15) |
Re: Compiler Construction Learning johnm@cory.berkeley.edu (1993-01-16) |
Newsgroups: | comp.compilers |
From: | johnm@cory.berkeley.edu (John D. Mitchell) |
Organization: | University of California, at Berkeley |
Date: | Sat, 16 Jan 1993 09:42:07 GMT |
References: | 93-01-048 93-01-107 |
Keywords: | courses |
moss@cs.cmu.edu (Eliot Moss) writes:
> I have taught a compiler course four times, and much prefer having the
> students learn to use an off the shelf parser generator (yacc/bison style).
>
> Reacting to previous postings, I don't think deep understanding of the
> syntactic aspects is quite the important thing. It is much more important
> to gain understanding of type checking, semantic processing in general,
> code generation, and the role of optimization, in my opinion.
I think the difference in focus is (or should be :-) dependent on what the
purpose of the class is. If your goal is to teach students who will move
on to create translators for more than simple pleasure than a
multi-course, in-depth, blood-sweat-and-tears approach is probably
warranted. If, on the other hand, your goal is to give a fundamental
appreciation of the travails of a language translator implementor and to
provide some experience with tools (both mental models and actual
programs) that are useful in a large number of situations that many of the
students will actually find themselves in upon graduation then a more tool
usage based approach probably makes a good bit more sense. Unfortunately,
current curriculum hell makes it difficult to have both types of courses
and so invariably some students are unsatisfied (unchallenged for those
who will go on in the field or inundated with 'useless' detail for those
who won't).
If you can't tell, I'd like to see both types of classes available so that
the student has the choice...
John
johnm@cory.Berkeley.EDU
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.