Schedule of classes (first half of semester)

MC28: Introduction to Computer Science II
Karl Knight, Spring 1999

Following is the tentative schedule of classes and labs before Spring Break, roughly the first half of the semester.

DateReadingTopicDue
2/8 10.1-10.2Introduction to EBNF and Micro-Scheme
2/9Lab 1: Extending Evaluators
2/1010.2-10.3EBNF and Micro-Scheme
2/11Lab 1 (continued)
2/1210.3More on Micro-Scheme

2/1510.4Global definitions: Mini-Scheme
2/16Lab 1 (continued)
2/1710.5Adding explanatory output
2/18Lab 1 (continued)
2/1911.1-11.2The SLIM architectureHomework #1

2/2211.3SLIM's instruction set
2/23Lab 1 (concludes)
2/2411.4Iteration in assembly languageLab #1
2/25Lab 2: SLIM Assembly Language Programming
2/2611.5Recursion in assembly language

3/1Recursion (continued)
3/2Lab 2 (continued)
3/311.6Memory in Scheme
3/4Lab 2 (concludes)
3/512.1-12.2Revisiting tree recursionHomework #2

3/8Review/catchupLab #2
3/9Test #1, 7:30-9:00 pm in Olin 321 (no lab)
3/1012.3Memoization
3/11Lab 3: Formatting paragraphs
3/1212.4Dynamic programming

3/1512.5Comparing memoization and dynamic programming
3/16Lab 3 (continued)
3/17Catchup
3/18Lab 3 (concludes)
3/1913.1-13.2Arithmetic expressions revisitedHomework #3

3/2213.2-13.3Arithmetic expressions and RA-stacksLab #3
3/23Lab 4: Robots
3/2413.3RA-stack implementations and representation invariants
3/25Lab 4 (continued)
3/2613.4Queues