Lecture notes
Most of the contents of the course on languages and compilers is described in its lecture notes (version Jan 3, added chapter on expressive power (chapter 8; older chapters from 8 now are +1)).
We are updating the lecture notes as we go, and will publish the updated versions before we talk about them in the lectures. Check this webpage for the latest version.
Previous versions:
- Dec 7, added chapters on LL (chapter 8; ignore for now: I will update it later) and LR (chapter 9)
- Dec 2, added the chapter on regular languages, the Stack Appendix, and corrected some errors
- Nov 27, added the chapter on computing with parsers
- Nov 19, 2025, corrected an error in the definition of symbola on p47, added the chapter on compositionality
- Nov 16, 2025, added the chapter on grammar design
- Nov 13 evening, 2025, corrected several errors reported by students
- Nov 13 morning, 2025 (new sections 3.3.2 and 3.5),
- Nov 11, 2025
- Nov 4, 2025 (updated palindromes example, changed the combinator parser datatypes, excluded later chapters for now. These will be reinserted as we go).