Schedule

This schedule may be subject to minor changes. Any changes will be announced in class and also be posted on the course web page.

Week Note Topic Reading
Week 1: Aug 26-Aug 30 No class Mon Regular languages
Regular expressions
LectureNotes1
Week 2: Sep 2-Sep 6 No class Mon Regular expressions (cont'd)  
Week 3: Sep 9-Sep 13   Finite Automata LectureNotes2
Finite Automata (cont'd) LectureNotes3
Week 4: Sep 16-Sep 20   Ruby Chapter 2, LectureNotes4
Ruby LectureNotes5
Week 5: Sep 23-Sep 27   Ruby metaprogramming LectureNotes6
Context-Free Languages LectureNotes7
Week 6: Sep 30-Oct 4   Parsing and Ambiguity LectureNotes8
Recursive-Descent Parsing LectureNotes9
Week 7: Oct 7-Oct 11   Recursive-Descent Parsing, cont'd.  
Exam 1
Week 8: Oct 14-Oct 18 No class Mon Turing Machines LectureNotes10
Week 9: Oct 21-Oct 25   Decidability and the Halting Problem LectureNotes11
Decidability of Regular Languages LectureNotes12
Week 10: Oct 28-Nov 1   Prolog Chapter 4
LectureNotes13
Prolog, cont'd LectureNotes14
Week 11: Nov 4-Nov 8   Scala Chapter 5
LectureNotes15
Scala, cont'd LectureNotes16
Week 12: Nov 11-Nov 15   Scala, cont'd LectureNotes17
Erlang Chapter 6
LectureNotes18
Week 13: Nov 18-Nov 22   Erlang, cont'd LectureNotes19
Clojure Chapter 7
LectureNotes20
Week 14: Nov 25-Nov 29 No class Wed Clojure, cont'd LectureNotes21
Week 15: Dec 2-Dec 6   Review / Lab catch-up day  
Concurrency in Clojure TBA
Week 16: Dec 9-Dec 13 No class Wed Exam 2