Programming Languages

Lymph, v.:  to walk with a lisp.

Programming languages: the computer scientist's most fundamental and most powerful abstractive tool. In this class, you will explore for yourself the nature of programming languages, develop analytical tools to appreciate and understand their implementation, and ultimately see how you might go about designing your own programming language.

This course will follow the text Programming Languages: Application and Interpretation by Shriram Krishnamurthi. It is recommended that you make use of the DrScheme programming environment, and install the PLAI language level as described here. We will be following a structure similar to that of CS173 at Brown University


The History of Programming Languages

A few years ago, O'Reilly made this poster available. It was pretty, but a bit lacking in terms of the quantity of languages included.

20090110-language-poster

Eric Levenez provides a more detailed poster on his site. Note that there is a nifty Javascript for exploring the poster as well.

Bill Kinnersley maintains a repository with information on roughly 2500 programming languages.

And, if you want to compare languages, you could go to the Computer Language Shootout. Or, you can check out O'Reilly's analysis of the computer language book market.

language-treemap