Research papers

Research publications can be found at the web pages for the programming languages group (LOOME) and the educational technology group (SLICE).


  • Programming Languages: An Interpreter-Based Approach, Addison-Wesley, 1990. This book presents a variety of languages - Lisp, APL, Scheme, SASL, CLU, Smalltalk, and Prolog - in simplified form with Lisp-like syntax.

    I occasionally am asked whether I intend to update this book. In fact, Norman Ramsey has expanded the book into a new edition, which should be published fairly soon. In the meantime, he has provided the pdf to some people; you can write to him at

    There is quite a bit of code in this book, including the interpreters (written in Pascal in the book, but since ported to C as well). You can obtain it in various formats. The compressed tar files contain the errata, Pascal or C code for the interpreters, and all the code given in the various languages in the book.

    • Errata (ASCII file)
    • distr.tar.Z. All the items mentioned above, with the Pascal versions of the interpreters, as a Unix-compressed tar file. (177Kb)
    • distr.tar.gz. Same items as distr.tar.Z, but as a gzipped tar file. (111Kb)
    • C-distr.tar.Z. Same items as in distr.tar.Z, but interpreters are written in C. Only the interpreters for chapters 1 through 8 have been ported to C; the Pascal distribution includes interpreters discussed in Chapter 10 as well. (131Kb)
    • C-distr.tar.gz. Same items as C-distr.tar.Z, but as a gzipped tar file. (69Kb)

    In addition, Tim Budd rewrote the interpreters in C++ some time ago; the code it interesting in itself (especially the way he handled Prolog). His ftp page doesn't seem to be working, but the code is available from the CMU AI Repository.

  • Introduction to Programming with Mathematica, with Richard Gaylord and Paul Wellin, Cambridge University Press, 2005.

  • Programming with class: A C++ Introduction to Computer Science, with Ed Reingold, McGraw-Hill, 1996.

  • An Introduction to Computer Science using Java, 2nd Ed. with Denny Mickunas and Ed Reingold, McGraw-Hill, 2002. (To get the Java code associated with this book, click here. Then click on "Library and code" in the upper left.)

    Last updated on Thu Sep 5 15:02:32 CDT 2013