|
|
CSCI 71010: Programming Languages and Their ImplementationSubash Shankar Fall 2012 |
| Week | Date | Topic | Reading | Lecture Addenda | Homework |
|---|---|---|---|---|---|
| 1 | Aug 30 |
Introduction | Chap. 1-2 (ed2: 1-3) | Slides on bb |
|
| 2 | Sep 06 | Syntax | Chap. 6 (ed2: 4) | HW 1 |
|
| 3 |
Sep 13 | Formal Semantics - Intro | Chap. 12.1 (ed2:13.1) | Slides on bb |
|
| 3 | Sep 13 | Operational Semantics | Chap. 12.2(ed2:13.2) | Example from
class |
HW 2 |
| 3,4 |
Sep 13 Sep 20 |
Denotational Semantics | Chap. 12.3(ed2:13.3) | HW 3 | |
| 4,5 |
Sep 20 Sep 27 |
Axiomatic Semantics | A&O 3.1-3.4 (parts only) |
A&O Comments |
HW 4 |
| 5 |
Sep 27 |
Functional Programming | 3.1 (ed2: 11.1) |
Slides on bb |
|
| 6 |
Oct 04 |
Introduction to Haskell | Mertz(all) HPF Chap. 1-3 |
HW 5 (soln. on bb) |
|
| 7 |
Oct 11 |
Haskell Types & Type Classes |
HPF Chap. 5-6 |
HW 6 (soln. on bb) |
|
| 7 |
Oct 11 |
Delayed/Lazy Evaluation (in Haskell) | 3.4 (ed2: 11.5) Lecture |
||
| 8 9 |
Oct 18 Oct 25 |
Lambda Calculus Church Rosser Theorem |
3.6 (ed2: 11.8) Lecture |
HW 7 |
|
| 8 |
Oct 18 |
Midterm - 1 hour
(syntax + semantics) |
|||
| 9 |
Oct 25 |
Morals of Functional Programming | Lecture |
Slides on bb | |
| 9 |
Oct 25 |
Logic Programming |
4.1 (ed2: 12.1) |
Slides on bb |
|
| 10 |
Nov 08 |
Intro to Prolog | 4 (ed2: 12 LM Chap. 1-4 |
HW8 (soln. on bb) |
|
| 11 |
Nov 15 |
Prolog Techniques |
HW9 |
||
| 11 |
Nov 15 |
Prolog: non-declarative and extra-logical parts | Debugging Using
SWI |
HW 10 |
|
| 12 |
Nov 29 |
Negation and Control in Prolog | Lecture |
||
| 12 |
Nov 29 |
Logic Programming Theory | Lecture |
||
| 13 |
Dec 06 |
Types | 8 (ed2: 6) |
Slides on bb |
HW 11 (soln. on bb) |
| 13 14 |
Dec 06 Dec 13 |
Alternate Logic Programming Languages | Lecture + 11.1,11.8 (ed2:9.1,9.8,12.6) |
HW 12 |
|
| Software Engineering Applications | |||||
| Overview of Compilers |
|||||
| Concurrent Languages | |||||
| Reactive Languages |
|||||
| Dec 20 |
Final Exam (2-4 PM) |
||||
The above schedule is very approximate, and will
be
changed as we progress through the semester.