Programming Languages

CSCI-GA.2110-001
Summer 2023

Textbooks

Required

This is a excellent text that covers both language design and compiler fundamentals. In your readings for this course you don't need to study sections that deal with translation and compiler construction issues, but that material is interesting, and you will examine it in more detail when you take the Compiler Construction course.

Recommended

You ought to also have good books on C++ and Java. Rather than insist on any particular book, here are some recommendations:

The books written by the creators of C++ and Java are the standard references:

For the remaining languages, there is a lot of information available on the web in the form of references and tutorials, so books may not be strictly necessary. However, if you are interested, a few recommendations follow.

We will also discuss functional languages, specifically Scheme and ML.

Time permitting, we will discuss scripting languages. Our exemplar will be Perl, and we may also touch on Python. The standard reference on Perl is also a great tutorial: