Instructor: Hossein Hojjat
Email: hh at cs rit edu
Office hours (GOL-3545):
Lectures: MoWeFr 10:00AM-10:50AM (GOL-2590)
Description & Policies:
Course Description
CS Common Course Policies
Grading Policies
Assignment Policies
Acknowledgements:
Portions of this course material based upon similar courses offered at Tufts University (Norman Ramsey, Samuel Guyer, Kathleen Fisher).
Monday 08/22 | Lecture 1: Introduction |
Wednesday 08/24 | Lecture 2: Imperative Core Language |
Friday 08/26 | Recitation 1: Impcore Programming |
Monday 08/29 | Lecture 3: ImpCore: Operational Semantics (Part 1) |
Wednesday 08/31 | Lecture 4: ImpCore: Operational Semantics (Part 2) |
Friday 09/01 | Lecture 5: Theory and Meta-Theory |
Monday 09/05 | Labor Day (No class) |
Wednesday 09/07 | Recitation 2: Operational Semantics of Impcore |
Friday 09/09 | Lecture 6: Introduction to Scheme |
Monday 09/12 | Lecture 7: Equational Reasoning & Algebraic Laws |
Wednesday 09/14 | Recitation 3: Scheme Programming (Recursion) |
Friday 09/16 | Lecture 8: First-class Functions |
Monday 09/19 | Lecture 9: Higher-order Functions for Lists |
Wednesday 09/21 | Lecture 10: Continuations, µScheme Semantics |
Friday 09/23 | Recitation 4: Higher-Order Functions and Operational Semantics |
Monday 09/26 | Lecture 11: ML Overview |
Wednesday 09/28 | Lecture 12: Algebraic data types |
Friday 09/30 | Lecture 13: Introduction to Type Theory |
Instructor attending FMCAD 2016.
Professor Fluet teaches the course this week (please refer to his page for material).
Tuesday 10/11 | Recitation 6: Monomorphic Type Systems (Typed Impcore) |
Wednesday 10/12 | Lecture 16: Kinding Rules for Polymorphic Types |
Friday 10/14 | Lecture 17: Typed μScheme |
Monday 10/17 | Recitation 7: Polymorphic Type Systems (Typed μScheme) |
Wednesday 10/19 | Lecture 18: Introduction to Smalltalk |
Friday 10/21 | Lecture 19: Smalltalk (inheritance, block) |
Monday 10/24 | Lecture 20: Smalltalk Collections |
Wednesday 10/26 | Recitation 8: Smalltalk Programming |
Friday 10/28 | Lecture 21: Introduction to Prolog |
Monday 10/31 | Lecture 22: Lists in Prolog |
Wednesday 11/02 | Lecture 23: Using Cuts |
Friday 11/04 | Recitation 9: Prolog Programming |
Monday 11/07 | Lecture 24: Type Inference (Examples) |
Wednesday 11/09 | Lecture 25: Hindley-Milner Type System |
Friday 11/11 | Lecture 26: Type Inference Rules |
Monday 11/14 | Recitation 10: Type Inference |
Wednesday 11/16 | Lecture 27: Control Structures |
Friday 11/18 | Lecture 28: Reduction Semantics for Control Structures |
Monday 11/21 | Snow Day |
Wednesday 11/23 | Thanksgiving Break |
Friday 11/25 | Thanksgiving Break |
Monday 11/28 | Recitation 11: Control Operators & Reduction Semantics |
Wednesday 11/30 | Lecture 29: Garbage Collection (Ref. Counting) |
Friday 12/02 | Lecture 30: Mark-and-Sweep Garbage Collection |
Monday 12/05 | Lecture 31: Copying Garbage Collection |
Wednesday 12/07 | Recitation 12: Garbage Collection |
Friday 12/09 | Final Exam Preparation |