Lecture notes for COMP 371/471: Theory (and Practice) of Programming Languages at Loyola University Chicago's Computer Science Department. This version of the course is normally taught by Konstantin Läufer and focuses on the functional and concurrent programming paradigms with projects mostly in Scala.
Warning
These notes are still being written, so expect a few rough edges. But we're getting closer!