CS1102 (A09) Accelerated Intro to Program Design
Lecture and Reading Schedule

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!

Exam Dates

Midterm Exam: Monday, Sept 21, in class
Final Exam: Thursday, Oct 15, in class


Functional Programming



DateLecture TopicReadingsExtra ExercisesDueNotes
Thu 8/27Introduction to Scheme - 1 HTDP Chapter 2
HTDP Chapter 3
HTDP Section 2.2 Exercises
HTDP Section 2.3 Exercises
HTDP Section 3.3 Exercises
   
Fri 8/28Images, Symbols and Conditionals - 2 HTDP Chapter 4
HTDP Chapter 5
HTDP Section 4.3 Exercises
HTDP Section 4.4 Exercises
HTDP Section 5.1 Exercises
Survey/Partners
 
Mon 8/31Structures - 3 HTDP Chapter 6
HTDP Section 6.3 Exercises
HTDP Section 6.4 Exercises
HTDP Section 6.7 Exercises
   
Tue 9/1Mixed Data, Nested Structures, Intro to Lists - 4 HTDP Chapter 7
HTDP Section 9.1
HTDP Section 9.2
HTDP Section 7.2 Exercises
HTDP Section 9.1 Exercises
HTDP Section 9.2 Exercises
   
Thu 9/3Lists and The Design Recipe - 5 HTDP Chapter 9
HTDP Chapter 10
HTDP Section 9.1 Exercises
HTDP Section 9.2 Exercises
HTDP Section 9.5 Exercises
HTDP Section 10.1 Exercises
Homework 1
 
Fri 9/4Lists of structures - 6 HTDP Section 10.2
HTDP Section 10.2 Exercises
  large circles code
Mon 9/7Labor Day -- no class        
Tue 9/8Sorting - 7       Using Templates Effectively
insertion sort code
Thu 9/10Trees - 8 HTDP Chapter 14
HTDP Section 14.2 Exercises
Homework 2
Summary of Template Forms
Notes on trees [ppt]
Notes on trees [pdf]
Fri 9/11Mutual Recursion (more trees) - 9 HTDP Chapter 15
HTDP Section 15.1 Exercises
HTDP Section 15.3 Exercises
   
Mon 9/14Intro to Higher-Order Functions and Filter - 10 HTDP Chapter 20
HTDP Chapter 22
    quicksort code
Notes on loops [ppt]
Notes on loops [pdf]
Tue 9/15Filter and Map - 11 HTDP Section 19.1
HTDP Section 21.1
HTDP Section 21.2
HTDP Section 21.2 Exercises
  Notes and Exercises
Notes on lambdas as args
Advanced Loops (OPTIONAL) [ppt]
Advanced Loops (OPTIONAL) [pdf]
Thu 9/17Functions as Values - 12 HTDP Section 22.3
  Homework 3
The GUI teachpack
The room draw solution

Designing and Implementing Languages : SlideShows



DateLecture TopicReadingsExtra ExercisesDueNotes
Fri 9/18Introduction to Languages - 13 Notes
    Powerpoint Sample
Slideshow without a language (needs advanced language level)
Data definitions and first talk
Mon 9/21Midterm Exam -- In class (CLOSED BOOK) - 14 Midterm Prep Guide
A07 midterm exam
A05 midterm exam
   
Tue 9/22A First Slideshow Interpreter - 15 Notes
    ppt-base.ss (starter file for lecture)
ppt-stage1.ss (final code)
Summary of Scheme constructs
Thu 9/24Adding Time Conditionals and Dynamic Content - 16 Notes
  Homework 4
ppt-stage2.ss (time)
ppt-stage3.ss (dynamic via lambda)
set! and when to use it
Fri 9/25Supporting Variables - 17       ppt-stage3-nolambda.ss (dynamic via vars)

Macros



DateLecture TopicReadingsExtra ExercisesDueNotes
Mon 9/28Introduction to Macros - 18 Macro notes
  Project Design
 
Tue 9/29Design Review and More Macros - 19 More macro notes
    ppt-with-macros.ss
Thu 10/1Languages and Macros for Finite State Machines - 20 Automata Notes
  Homework 5
 
Fri 10/2More Languages and Macros for Finite State Machines - 21 Macro Notes
     
Mon 10/5Error Checking in Macros and Recursive Macros - 22 Error Checking in Macros
Recursive Macros
    Starter file for class

Web Programming



DateLecture TopicReadingsExtra ExercisesDueNotes
Tue 10/6The Problem of Web Programming - 23 Web Notes
    Code from lecture
Thu 10/8Converting to Script Position - 24 Script Pos Notes
  Homework 6
Starter file for class
Fri 10/9Practice with Script Position - 25 Same Notes and starter file
    Solutions to problems from class
Scripts in conditionals
Sun 10/11      Project Final
 

Odds and Ends



DateLecture TopicReadingsExtra ExercisesDueNotes
Mon 10/12Fun with Scheme - 26       Symbolic and numerical differentiation code
Tue 10/13What's with those *@#*&$!*# Parentheses?; Course Evals - 27 Notes on quoted lists
  Homework 7
 
Thu 10/15Final Exam -- In class (OPEN BOOK) - 28 Prep Guide
A07 final exam
A05 final exam
   


A MzScheme script generated this page on Mon Oct 12 21:21:21 EDT 2009.