There is one required text for CS 611 this semester:
-
The Formal Semantics of Programming Languages, by Glynn Winskel
The following book is recommended but not required:
- Types and Programming Languages, by Benjamin Pierce
These books are excellent sources for the course, so purchasing them is a good
idea. In a pinch, many students in the CS department will have this book, and
they will also be on reserve at the Engineering library.
Some other useful texts that provide a different perspective or more
depth in some areas are:
- Programming Languages: Theory and Practice, by Robert Harper
(online draft)
- Foundations for Programming Languages, by John Mitchell
- Semantics for Programming Languages, by Carl Gunter
- Basic Category Theory for Computer Scientists, by Benjamin Pierce
Some online resources for OCaml:
- Objective CAML Tutorial
- Introduction to the Objective Caml Programming Language, by Jason Hickey (online version)
- F#, a language similar to OCaml. You can use the Visual Studio IDE to write and debug F# programs.
- Comparison of SML and OCaml, by Andreas Rossberg.
- ledit, a tool to provide emacs-like editing (and history) to the OCaml toplevel. (Info on how to use ledit, and other tips for using the toplevel, here.)
For information about which readings are associated with each lecture,
see the course schedule.