Programming in standard ML

This book is an introduction to programming with the Standard ML programming language. It began life as a set of lecture notes for Computer Science 15-212: Principles of Programming, the second semester of the introductory sequence in the undergraduate computer science curriculum at Carnegie Mellon University. It has subsequently been used in many other courses at Carnegie Mellon, and at a number of universities around the world. It is intended to supersede my Introduction to Standard ML, which has been widely circulated over the last ten years.