Labs
The functional model
Beginning Scheme
Symbols and lists
Editing Scheme programs
Procedure definitions
Conditional evaluation
Recursion with lists
Numbers
Recursion with integers
Preconditions and
postconditions
Project: Mixing organic
fertilizers
Deep recursion
Pairs
Association lists
Local bindings
Indefinite recursion
Local binding and recursion
Project: The prisoner's dilemma
Characters
Strings
Procedures as values
Folding
Variable arity
Project: Solving permuted-word puzzles
Multiple-valued procedures
Vectors
The imperative model
Side effects
Structure mutation
Iteration
Matrices
Sorting by insertion
Sorting by merging
Searching
Project: Substitution ciphers
Input and output under program control
Outside the DrScheme environment
Files
Recursion with files
Records
Metaprogramming
Assignment
The object model
Object-oriented programming
Stacks
Queues
Classes and objects in DrScheme
Windowing classes
Drawing classes
This document is available on the World Wide Web as
http://www.cs.grinnell.edu/~stone/courses/scheme/labs/
created August 9, 2001
last revised December 3, 2001
John David Stone
(stone@cs.grinnell.edu)