Programming Language Concepts
CS 360-001 Tuesday/Thursday 15:30-16:50 (Rush 9)
CS 360-002 Tuesday/Thursday 14:00-15:20 (Rush 9)
CS 360-003 Tuesday 18:30-21:20 (Science Center 326, 3401 Market)
Office: University Crossings 106
Office hours: Mondays 4pm–7pm; Thursdays 5pm–6pm.
CLC office hours: Monday 2pm–4pm; Friday 3pm–5pm
This schedule is tentative and may be modified at the instructor’s discretion. CS 360-003 will cover the entire week’s material on Tuesday; if you are in that section, please come to class having read all readings for the week.
Please come to lecture having read the listed chapters. If readings are marked “for reference,” then you do not need to read them before class, but they will help you understand the material in that lecture. Readings are from the following sources:
See the homework section of the site for a list of all assigned homework and associated due dates.
Video recordings of all three sections are available on Blackboard under “Class Capture”link or via this link.
The examples from lecture are available on GitHub in the DrexelCS360/lectures repository.
|Lecture Date||Material Covered||Reading||Lecture Material|
|Week 1||1/10||Introduction to Programming Languages|
|1/12||Functional Programming in Scheme|
|Week 2||1/17||Programming with State||SICP 1.1, 3.1|
|1/19||Evironment Model of Evaluation; Streams||SICP 3.2, 3.5.1, 3.5.2|
|Week 3||1/24||The Metacircular Evaluator||SICP 4.1|
|1/26||A More Efficient Interpreter||SICP 4.1|
|Week 4||1/31||A Lazy Interpreter||SICP 4.2|
|2/2||Tail Recursion; CPS; Search||SICP 2.2.3, 3.5.3, 4.3|
|Week 5||2/7||A Language for Search||SICP 4.3|
|2/9||Logic Programming with Prolog|
|Week 6||2/14||Midterm (given at the beginning of class for CS 360-003)||Midterm exam study guide|
|2/16||Haskell||LYAH 2–3 (flip through chapters 4–8 so you know what they contain)|
|Week 7||2/21||More Haskell||LYAH 1–8 (for reference)|
|2/23||Abstracting computation||LYAH 8–13 (for reference)|
|Week 8||2/28||Introduction to semantics||SWA 1|
|3/2||Operational and axiomatic semantics||SWA 2, 9|
|Week 9||3/7||Regular expressions and finite automata||FOCC 10, MCD 2 (for reference)|
|Week 10||3/14||Grammars and parsing||FOCC 11, MCD 3 (for reference)||pdf video|
|3/16||Parser combinators; continuation passing style; course wrap-up|
Final Exam for CS 360-003
18:30–20:30 (SC 326)
|Final exam study guide|
Final Exam for CS 360-001 and CS 360-002
15:30–17:30 (RANDEL 121)