|Wanted: references for interpreter implementation mwette@mrw_csi.Jpl.Nasa.Gov (1990-06-20)|
|Re: Wanted: references for interpreter implementation email@example.com (1990-06-21)|
|From:||firstname.lastname@example.org (Ozan Yigit)|
|Date:||Thu, 21 Jun 90 18:40:45 GMT|
|Organization:||York U. Communications Research & Development|
In article <1990Jun20.email@example.com>
mwette@mrw_csi.Jpl.Nasa.Gov (Matt Wette) writes:
>I am looking for references to implementation of interpreters. I am
>interested in writing a fast inner interpreter for a language I wish to
>implement. Current article and/or book references would be appreciated.
Although the book I would recommend is not specifically about interpreters
per-se, it describes five different languages using interpreters, so I think
it would be of some interest to you. Here is a pico review I had posted
to some other newsgroups. Enjoy.
| Languages: An Interpreter-based Approach
| Samuel Kamin
| Addison-Wesley ISBN 0-201-06824-9
| Archive-site: cs.uiuc.edu [188.8.131.52]
| Archive-directory: pub/kamin.distr
| This is a book that details programming languages through a study of Apl,
| Lisp, SmallTalk, Scheme, Prolog, Clu and Sasl. [some my favorites :-)]
| The really unique thing about the book is that it presents a simple (?)
| interpreter for each language that highlights the functionality of that
| language. Each interpreter is a modification of a simple language
| [functions, control structures, variables] interpreter with a lisp-like
| [i.e. lots of parens :-)] syntax.
| The choice of languages is especially interesting: these really cover an
| extraordinary collection of concepts, though there are some similarities
| between some of them, and they are bundled where they are related: scheme
| and sasl, clu and smalltalk etc.
| Discussion of each language is done in its lisp-like form [which nicely
| hides all the "real life" syntax crud that sometimes tend to overshadow
| the really interesting concepts -- nowadays known as C++ syndrome ;-)],
| with plenty of *complete* examples highlighting the characteristics of the
| language , followed by a section on implementation [i.e. modifications to
| the basic interpreter - each interpreter is written in pascal, and full
| source code included in the appendix, and I believe they are also ftpable
| from UofIllinois] and a section on "the real language". The discussion of
| the languages is very thorough: In other words, the author does not
| short-change the reader just because there is complete source somewhere in
| the book. I was pleasantly surprised to find an excellent discussion of
| scheme compilation, garbage-collection strategies with source (mark-sweep,
| stop-copy, reference-counting), a section on lambda calculus, ML, C++ and
| few other gems.
| In my view, An excellent book. Good mix of theory and practice, and is
| understandable to boot, all with source. It is highly recommended.
York U. CCS: (416) 736 5257
Return to the
Search the comp.compilers archives again.