Note: The "Extra Exercises" column provides additional practice exercises that you can try. These will not be graded, and are separate from the homework assignments. You are always welcome to bring questions on these practice problems to office hours. We strongly recommend that you try some of these exercises as you will need to be comfortable programming in Scheme by the third week of the course!
Midterm Exam: Tuesday, Sept 23, in class (moved from Monday 9/22)
Final Exam: Thursday, Oct 16, in class
Functional Programming |
Designing and Implementing Languages : SlideShows |
Date | Lecture Topic | Readings | Extra Exercises | Due | Notes |
---|---|---|---|---|---|
9/19 | Introduction to Languages | Notes |
Powerpoint Sample Slideshow without a language (needs advanced language level) Data definitions and first talk |
||
9/22 | A First Slideshow Interpreter | Notes |
ppt-base.ss (starter file for lecture) ppt-stage1.ss (final code) Summary of Scheme constructs |
||
9/23 | Midterm Exam -- In class | Midterm Prep Guide |
A07 midterm exam A05 midterm exam |
||
9/25 | Adding Time Conditionals and Dynamic Content | Notes |
Homework 4 |
ppt-stage2.ss (time) ppt-stage3.ss (dynamic via lambda) set! and when to use it |
|
9/26 | Supporting Variables | ppt-stage3-nolambda.ss (dynamic via vars) |
Macros |
Date | Lecture Topic | Readings | Extra Exercises | Due | Notes |
---|---|---|---|---|---|
9/29 | Introduction to Macros | Macro notes |
Project Design |
||
9/30 | Design Review and More Macros | More macro notes |
ppt-with-macros.ss |
||
10/2 | Languages and Macros for Finite State Machines | Automata Notes |
Homework 5 |
||
10/3 | More Languages and Macros for Finite State Machines | Macro Notes |
|||
10/6 | Error Checking in Macros and Recursive Macros | Error Checking in Macros Recursive Macros |
Starter file for class |
Web Programming |
Date | Lecture Topic | Readings | Extra Exercises | Due | Notes |
---|---|---|---|---|---|
10/7 | The Problem of Web Programming | Web Notes |
Code from lecture |
||
10/9 | Converting to Script Position | Script Pos Notes |
Homework 6 |
Starter file for class |
|
10/10 | Practice with Script Position | Same Notes and starter file |
Solutions to problems from class |
||
10/13 | Language Tools for Web Programming | The adder with let/cc The adder in the Scheme server |
Odds and Ends |
Date | Lecture Topic | Readings | Extra Exercises | Due | Notes |
---|---|---|---|---|---|
10/14 | What's with those *@#*&$!*# Parentheses?; Course Evals | Notes on quoted lists |
Homework 7 |
||
10/16 | Final Exam -- In class (OPEN BOOK) | Prep Guide |
A07 final exam A05 final exam |
A MzScheme script generated this page on Thu Oct 16 09:08:39 EDT 2008. |