Computer Science 151 is a laboratory-based course that uses collaborative
learning extensively. The following list outlines each laboratory exercise
for the course.
| Laboratory |
| Exercise | Title and Description |
|
Lab. 1 | Getting Started: |
| |
|
Lab. 2
| Beginning Scheme: |
| |
|
Optional Lab. 2a
| The Scheme Environment: |
| |
|
Lab. 3
| An Introduction to Lists in Scheme: |
| |
|
Lab. 4
| Working with Dr. Scheme: |
| |
|
Lab. 5
| User-Defined Procedures: |
| |
|
Lab. 6
| Simple Scheme Predicates: |
| |
|
Lab. 7
| Conditional Execution in Scheme: |
| |
|
Lab. 8
| Recursion: The Basics: |
| |
|
Lab. 9
| Variations on Recursion: |
| |
|
Lab. 10
| Testing Preconditions: |
| |
|
Lab. 11
| Random Number Generators: |
| |
|
Lab. 12
| Simulations: |
| |
|
Lab. 13
| Side Effects and Sequencing: |
| |
|
Lab. 14
| Flat Recursion: |
| |
|
Lab. 15
| Deep Recursion: |
| |
|
Lab. 16
| Patterns: |
| |
|
Lab. 17
| Pairs: |
| |
|
Lab. 18
| Local Bindings: |
| |
|
Lab. 19
| Local Binding and Recursion: |
| |
|
Lab. 20
| Local Procedures: |
| |
|
Lab. 21
| Character Data: |
| |
|
Lab. 22
| Strings: |
| |
|
Lab. 23
| Input and Output: |
| |
|
Lab. 24
| Application: Placing Students Using An
Expert Systems: |
| |
|
Lab. 25
| An Introduction to Files: |
| |
|
Lab. 26
| Processing Lines in Files: |
| |
|
Lab. 27
| Beginning a File Processing Library: |
| |
|
Lab. 28
| Procedures As Values: |
| |
|
Lab. 29
| Variable Arity: |
| |
|
Lab. 30
| Higher-Order Procedures: |
| |
|
Lab. 31
| Formatted Output: |
| |
|
Lab. 32
| Vectors: |
| |
|
Lab. 33
| Structure Mutation: |
| |
|
Lab. 34
| Assignment and Scope: |
| |
|
Lab. 35
| And Introduction to the World Wide Web and CGI
Programming: |
| |
|
Lab. 36
| CGI Programming: |
| |
|
Lab. 37
| Iteration: |
| |
|
Lab. 38
| Insertion Sort: |
| |
|
Lab. 39
| Merge Sort: |
| |
|
Lab. 40
| Searching Methods: |
| |
|
Lab. 41
| Records: |
| |
|
Lab. 42
| Object-Oriented Programming: |
| |
|
Lab. 43
| Queues: |
| |
|
Lab. 44
| Object-Oriented Design: |
| |