Download the latest edition of the book
The book Introduction to Programming Languages is an introductory book on programming languages. We, Jaemin Hong and Sukyoung Ryu, write this book as the textbook of the KAIST Programming Languages course. However, we do not limit the use of the book; we would be happy to see the book being used by anyone who wants to learn or teach basic programming language concepts, including syntax, semantics, type systems, and interpreter/type-checker implementations. If you are a faculty and want to use the book in your lecture, we politely ask you to introduce the authors and this webpage to your students. We would be delighted to receive comments and corrections, which may be sent to jaemin.hong@kaist.ac.kr.
Acknowledgement
The contents of this book are based on the KAIST Programming Languages course. We thank PLT since the course referred to many materials from PLT in the beginning. We also thank every student who took the course before. We have learned many things from the interaction with the students, and those lessons have affected various parts of the book. In addition, we thank all the previous and current teaching assistants of the course. They gave opinions to the course and wrote some of the exercises in the book. Especially, Jihyeok Park highly contributed to the course, and Jihee Park helped us edit the exercises. We thank in advance everyone who will contribute to the book in the future.
Editions
- Aug 10, 2023 (latest)
- Reduce page margins
- Fix typos
- Feb 23, 2023
- Fix typos
- Sep 16, 2022
- Add exercises
- Add solutions to some of the exercises
- Fix typos
- Mar 10, 2022
- Add chapters (Garbage Collection and Type Inference)
- Add exercises
- Add solutions to some of the exercises
- Fix typos
- Aug 27, 2021
- Fix chapter descriptions in Chapter 1
- Aug 22, 2021
- Fix typos
- May 10, 2021