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


  • Time: Tuesdays and Thursdays 2:50-4:15 (Section I) and 4:25-5:50PM (Section II)
  • Classroom: Science 2 Room 143
  • Professor: David Liu. Office hour: Tuesdays and Thursdays 2:20-2:50PM, 5:50-6:20PM (in the lobby/elevator area of Science 2, outside classroom 132)
  • TA/GA:
    • Pradyumna Kaushik, P17, MW 6-7, pkaushi1@binghamton.edu
    • Abhishek Jain, G25, F12-2, ajain13@binghamton.edu
    • Omar T Khasawneh, T1-2, okhasaw1@binghamton.edu
  • 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


This dateline is being developed incrementally and iteratively. It is a tentative schedule, in that changes may still happen. The schedule and topics will be continually updated to reflect any changes.

Week 1
Th (Aug 24)
Week 2
T (Aug 29)
Procedural Languages Under the Hood I
Code Review 1 Out
Week 2
Th (Aug 31)
Procedural Languages Under the Hood II
Week 3
T (Sept 5)
Procedural Languages Under the Hood III
Week 3
Th (Sept 7)
OO Languages Under the Hood I
Week 4
T (Sept 12)
OO Languages Under the Hood II
Code Review 1 Due; Code Review 2 Out
Week 4
Th (Sept 14)
OO Languages Under the Hood III
Week 5
T (Sept 19)
OO Languages Under the Hood IV
Week 5
Th (Sept 21)
no classes
Week 6
T (Sept 26)
OO Languages Under the Hood V
Code Review 2 Due
Week 6
Th (Sept 28)
Functional Languages I
Week 7
T (Oct 3)
Code Review Presentation 1
Week 7
Th (Oct 5)
Functional Languages II
Assignment I Out
Week 8
T (Oct 10)
Functional Languages III
Week 8
Th (Oct 12)
Functional Languages IV
Week 9
T (Oct 17)
no classes
Week 9
Th (Oct 19)
Code Review Presentation II
Week 10
T (Oct 24)
Week 10
Th (Oct 26)
Week 11
T (Oct 31)
Functional Languages V
Week 11
Th (Nov 2)
Logic Languages I

Useful Links

Academic Honesty