CSC 153 Grinnell College Spring, 2009
 
Computer Science Fundamentals
 

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 format / pdf format / postscript formats.

Although the readings and labs are available (with only minor editing anticipated), the class schedule is in draft form, and assignments are still under construction.

Lab Index:  January:   1, 2, 3, 4, 5, 6, 7, 8
February:   9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21
March:   22, 23, 24, 25, 26, 27, 28, 29
April:   30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44
May:   45, 46, 47


lab # Class Period Topic Reading Lab Due Date Availability
for
Extra
Credit
1 Mon, Jan 19 Introduction reading lab    
2 Tues, Jan 20 User-Defined Procedures, Comments, Predicates reading lab Fri, Jan 23  
3 Wed, Jan 21 Conditionals reading lab    
4 Fri, Jan 23 Linux Basics (commands, file permissions) reading lab    
5 Mon, Jan 26 Simple Lists; Structures reading lab Wed, Jan 28  
6 Tues, Jan 27 Basic Recursion reading lab    
7 Wed, Jan 28 Designing Recursive Procedures   lab Tues, Feb 3  
8 Fri, Jan 30 Program Correctness; Husk-and-Kernel reading lab    
 
Note: With the introduction of pre- and post-conditions in Lab 8, all procedures for subsequent labs or supplemental problems must start with a statement of pre- and post-conditions, as well as the procedure name. If no pre-conditions are appropriate, that should be stated formally stated. Of course, every procedure does something, so it must have post-conditions.

A suggested format follows:

(define <procedure-name>
 ;;   Pre-condition:  .......
 ;;  Post-condition:  .......
    (lambda (...

 
9 Mon, Feb 2 Program Efficiency; Tail Recursion reading lab   Extra Credit if submitted by Mon, Feb 16
10 Tues, Feb 3 Character Data reading lab    
11 Wed, Feb 4 Strings; Encryption; Palindromes reading lab    
12 Fri, Feb 6 Input and Output reading lab    
  Mon, Feb. 9 Supplemental Problems 1 and 2  
13 Mon, Feb 9 Procedures: Parameters, MAP, Append, Eval reading lab   Extra Credit if submitted by Mon, Feb 23
14 Tues, Feb 10 Variables and Values reading lab    
15 Wed, Feb 11 Local Procedures   lab    
  Fri, Feb 13 Test 1 covers 1-14  
16 Mon, Feb 16 Iteration reading lab    
17 Tues, Feb 17 Sorting reading lab Fri, Feb 20  
18 Wed, Feb 18 Higher-Order Procedures reading lab Wed, Feb 25  
Fri, Feb 20
19 Mon, Feb 23 Procedures of Variable Arity reading lab   Extra Credit if submitted by Mon, Mar 9
20 Tues, Feb 24 Procedures as Values reading lab   Extra Credit if submitted by Tues, Mar 10
21 Wed, Feb 25 Anatomy of an Expert System   lab   Extra Credit if submitted by Wed, Mar 11
22 Fri, Feb 27 Introduction to C reading lab    
23 Mon, Mar 2 Conditionals and Loops reading lab    
  Tues, Mar 3 Supplemental Problem 3  
24 Tues, Mar 3 Functions and Parameters reading lab    
  Wed, Mar 4 Test 2 covers 1-23  
25 Fri, Mar 6 Arrays reading lab    
26 Mon, Mar 9 Loop Invariants reading lab   Extra Credit if submitted by Mon, Apr 6
  Tues, Mar 10 Pictorial Loop Invariants class discussion    
  Wed, Mar 11 Supplemental Problem 4  
27 Wed, Mar 11 More Pictorial Loop Invariants reading lab Wed, Apr 1  
Fri, Mar 13
Mon, Mar 16 Spring Break  
Tue, Mar 17 Spring Break
Wed, Mar 18 Spring Break
Fri, Mar 19 Spring Break
Mon, Mar 23 Spring Break
Tue, Mar 24 Spring Break
Wed, Mar 25 Spring Break
Fri, Mar 27 Spring Break
28 Mon, Mar 30 Linux and C reading lab    
29 Tues, Mar 31 Representation of Integers reading (by Christine Wright and Mr. Rebelsky) lab   Extra Credit if submitted by Tues, Apr 14
30 Wed, Apr 1 Floating Point Numbers reading (by Mr. Stone) lab   Extra Credit if submitted by Wed, Apr 15
31 Fri, Apr 3 Machine-level Operations and Unions reading lab Tues, Apr 7  
32 Mon, Apr 6 Characters and Strings reading lab    
33 Tues, Apr 7 String Puzzles and Idiosynchracies   lab    
34 Wed, Apr 8 Structures reading lab    
  Fri, Apr 10 Pointers class discussion    
35 Fri, Apr 10 Files in C reading lab   Extra Credit if submitted by Fri, Apr 24
36 Mon, Apr 13 More Pointers reading lab    
37 Tues, Apr 14 Stacks with Arrays reading lab Fri, Apr 17  
  Wed, Apr 15 Supplemental Problem 5  
38 Wed, Apr 15 Queues with Arrays reading lab    
  Fri, Apr 17 Lists in C class discussion    
39 Mon, Apr 20 Scheme-like Lists in C reading lab   Extra Credit if submitted by Mon, May 4
40 Tues, Apr 21 Still More Lists reading lab    
  Wed, Apr 22 Supplemental Problem 6  
41 Wed, Apr 22 Even More Lists reading (again) lab Wed, Apr 29  
42 Fri, Apr 24 Building Multi-File Programs reading lab   Extra Credit if submitted by Fri, May 8
  Mon, Apr 27 Test 3 Covers 1-41  
43 Tues, Apr 28 Doubly-Linked Lists reading lab    
44 Wed, Apr 29 Stacks with Lists reading lab   Extra Credit if submitted by Fri, May 8
45 Fri, May 1 Queues with Lists reading lab   Extra Credit if submitted by Fri, May 8
46 Mon, May 4 Queues with Circular Lists reading lab   Extra Credit if submitted by Fri, May 8
  Tues, May 5 Supplemental Problem 7  
47 Tues, May 5 Bash Scripts reading lab Fri, May 8  
Wed, May 6
Fri, May 8 Semester
Wrap Up
       

created 25 March 2008
last revised 16 March 2009
Valid HTML 4.01! Valid CSS!
For more information, please contact Henry M. Walker at walker@cs.grinnell.edu.