CS571: Programming Languages, Fall 2019 (Section I and II)


  • Time: Tuesdays and Thursdays 2:50-4:15 (sec 1), 4:25-5:50 (sec 2)
  • Classroom: AA G007
  • Professor: David Liu. Office hour: Thursdays 1:30-2:30 (Q3), Tuesdays and Thursdays 5:50-6:20PM (outside AA G007)
  • TA/GA:
    • TBA
  • MyCourses System, where lecture slides and assignments are posted.


This is an introductory programming language course for graduate students. Students are not assumed to have deep pre-knowledge of functional programming or logic programming. Significant experience with C-like languages and Java-like languages, however, is required. Topics covered by the course include:

  • semantics for C-like languages
  • semantics for Java-like languages
  • functional programming with Haskell
  • logic programming with Prolog
  • compiler construction

Recommended Textbooks

  • Michael Scott, Programming Language Pragmatics, 3rd Edition, ELSEVIER, ISBN:9780123745149
  • Kenneth C. Louden, Programming Languages Principles and Practice, 2nd Edition, Thomson Learning. ISBN:0-534-95341-7

Useful Links

Academic Honesty