Fundamentals of computer science I

Tentative Schedule of Labs, Supplemental Problems, Due Dates, and Extra Credit Alternatives

This page provides a listing of labs, including relevant readings, lab instructions, and assignment options. This material also is available in calendar form (without Web links) in dvi, postscript, and pdf formats.

lab # Class Period Topic Reading Lab Due Date Availability for
Extra Credit
0 Mon, Jan 19 Getting started reading      
1 Tues, Jan, 20 Beginning Scheme reading lab    
2 Wed, Jan 21 Symbols and lists reading lab Mon. Jan. 26  
3 Fri, Jan 23 Procedure definitions reading lab    
4 Mon, Jan 26 Conditional evaluation reading lab    
5 Tues, Jan 27 Recursion with lists reading lab Mon, Feb 2  
Wed, Jan 28 Recursion with lists (cont.) reading lab  
6 Fri, Jan 30 Numbers reading lab    
7 Mon, Feb 2 Recursion with integers reading lab    
Tues, Feb 3 Recursion with integers (cont.) reading lab    
8 Wed, Feb 4 Random Number Generators reading lab    
9 Fri, Feb 6 Simple Simulations reading lab Mon, Feb 9  
10 Mon, Feb 9 Preconditions and postconditions reading lab    
11 Mon, Feb 9 Patterns reading lab   Extra credit option
Tue, Feb 10 Test 1 covers 1-10      
12 Wed, Feb 11 Deep recursion reading lab Tues, Feb 17  
Fri, Feb 13 Deep recursion (cont.) reading lab  
13 Mon, Feb 16 Pairs reading lab   Extra credit option
14 Tue, Feb 17 Association lists reading lab    
15 Wed, Feb 18 Local binding reading lab    
16 Fri, Feb 20 Tail recursion reading lab    
Supplemental Problem 1 Mon, Feb 23
17 Mon, Feb 23 Local binding and recursion reading lab Fri, Feb 27  
Tues, Feb 24 Local binding and recursion (cont) reading lab  
18 Wed, Feb 25 Math functions reading lab    
19 Fri, Feb 27 Characters reading lab    
20 Mon, Mar 1 Strings reading lab Wed, Mar 3  
Tues, Mar 2 Test 2 covers 1-19      
21 Wed, Mar 3 Procedures as values reading lab    
Fri, Mar 5 Procedures as values (cont) reading lab    
22 Mon, Mar 8 Folding reading lab   Extra credit option
Supplemental Problem 2 Tues, Mar 9
23 Tues, Mar 9 Variable arity reading lab    
24 Wed, Mar 10 Multiple-valued procedures reading lab    
25 Fri, Mar 12 Application: Expert Systems   lab   Extra credit option
Mon, Mar 15 Spring Break
Tue, Mar 16 Spring Break
Wed, Mar 17 Spring Break
Fri, Mar 19 Spring Break
Mon, Mar 22 Spring Break
Tue, Mar 23 Spring Break
Wed, Mar 24 Spring Break
Fri, Mar 26 Spring Break
26 Mon, Mar 29 Vectors reading lab    
27 Tue, Mar 30 Side effects reading lab    
Supplemental Problem 3 Wed, Mar 31
28 Wed, Mar 31 Iteration reading lab Tue, Apr 6  
Fri, Apr 2 Iteration (cont) reading lab  
Mon, Apr 5 Algorithm Analysis
Tue, Apr 6 Sorting introduction
29 Wed, Apr 7 Sorting by insertion reading lab Mon, Apr 12  
30 Fri, Apr 9 Sorting by merging reading lab    
31 Mon, Apr 12 Searching reading lab    
32 Tue, Apr 13 Input and Output reading lab    
33 Wed, Apr 14 Binary trees reading lab    
Fri, Apr 16 Binary Trees (cont) reading lab    
Supplemental Problem 4 Fri, Apr 16
34 Mon, Apr 19 Intro. to Files reading lab    
35 Tue, Apr 20 File Processing with Streams reading lab    
36 Wed, Apr 21 Files Organized by Lines reading lab    
37 Fri, Apr 23 Creating a webpage reading lab    
Mon, Apr 26 Exam 3 covers 1-36
38 Tue, Apr 27 CGI scripts reading lab Mon, May 3  
Wed, Apr 28 CGI scripts (cont) reading lab  
Supplemental Problem 5 Fri, Apr 30
39 Fri, Apr 30 Assignment reading lab    
40 Records reading lab   Extra credit option
41 Mon, May 3 Object-oriented programming reading lab Wed, May 5  
42 Metaprogramming reading lab   Extra credit option
43 Tue, May 4 Stacks reading lab    
44 Wed, May 5 Queues reading lab    
45 Object-oriented design lab   Extra credit option
Fri, May 7 Course recap

created January 9, 1997
last revised January 17, 2004
Valid HTML 4.01! Valid CSS!
For more information, please contact Henry M. Walker at walker@cs.grinnell.edu.