On this page:
Detailed Syllabus
DrRacket

Syllabus

syllabus

W

   

Topics

   

Dates

   

Readings

1

   

The Basics

   

01/12, 01/14, 01/15

   

2e: Prologue

2

   

Atomic Data, Intervals

   

____, 01/21, 01/22

   

2e: I:1-3

3

   

Structures and Unions

   

01/26, 01/28, 01/29

   

2e: I:4-7

4

   

Large Data 1

   

02/02, 02/04, 02/05

   

2e: int.: BSL, II:9-10

5

   

Large Data 2

   

02/09, 02/11, 02/12

   

2e: int.: quote, II:11-14, I:3.6

6

   

Program Design & Abstraction

   

____, 02/18

   

2e: III:16-18

7

   

Abstraction

   

02/23, 02/25, 02/26

   

2e: III:16-18

8

   

Using Abstractions

   

03/02, 03/04, 03/05

   

2e: III:19-20

9

   

Intertwined Data: S-expr

   

03/16, 03/18, 03/19

   

2e: IV:22-24

10

   

Intertwined Data

   

03/23, 03/25

   

2e: IV:25

11

   

Generative Recursion 1

   

03/30, 04/01, 04/02

   

2e: V:25-27, 2e: IV:26-27

12

   

Generative Recursion 2, Accumulators

   

04/06, 04/08, 04/09

   

2e: V:28, VI:30

13

   

BSL interpreter

   

04/13, 04/15, 04/16

   

2e: VI:31-33

14

   

Exam

   

____

   

____

The above table is your guide to the entire semester. It lists topics and reading assignments on a week-by-week basis. In the third column you find the primary lecture dates.

The readings column is linked to the relevant book’s web site. You can find the required readings there.

You are primarily responsible for the readings not the content of the lectures though the latter will help you understand the former. The weekly problem sets, the quizzes, and the exams will cover the reading material.

Detailed Syllabus

WEEK 1

01/12

why cs; arithmetic of numbers, strings; administrivia

01/14

arithmetic of images, functions, simple animations

01/15

arithmetic of booleans, conditionals in functions

 

WEEK 2

____

MLK Day

01/21

intervals and conditionals

Hw. Set 1

functions, simple data -- due 1/20 by 7pm

01/22

enumerations and conditionals

Lab 1

drracket, define, interactions, errors, conditional functions, stepper

 

WEEK 3

01/26

Posn, distance0 for Posn, structure type definitions

Hw. Set 2

due 1/27 by 7pm

01/28

designing programs: six steps, tests

01/29

the Universe of Data, structures, functions on structures

Lab 2

Posn, functions on Posn, practice structure type definitions

 

WEEK 4

02/02

Itemizations/Unions

Hw. Set 3

due 2/03 by 7pm

02/04

recursion: russian dolls and functions on russian dolls; design

02/05

lists and functions on lists

Lab 3

design, unions, structures

 

WEEK 5

02/09

lists and functions on lists

Hw. Set 4

due 02/10 by 7pm

02/11

structures in list, lists in structures

02/12

design of a list-based world program, 1

Lab 4

lists in structures

 

WEEK 6

____

Presidents’ Day

Hw. Set 5

due 02/17 by 7pm

02/18

design of a list-based world program, 2

02/19

EXAM: Location: in class

NO LAB NO LAB NO LAB NO LAB NO LAB

 

WEEK 7

02/23

similarities in functions

Hw. Set 6

due 02/24 by 7pm

02/25

abstraction over similar functions: design

02/26

similarities in DDs, abstracting over DDs, signatures for functions

Lab 5

quote, quasiquote, comma | design of finite-state world program

 

WEEK 8

03/02

similarities in DDs, abstracting over DDs, signatures for functions

Hw. Set 7

due 03/03 by 7pm

03/04

existing abstractions and using them

03/05

more on using loops

Lab 6

abstraction

 

WEEK 9

03/16

lambda and scope

Hw. Set 8

due 03/17 by 7pm

03/18

S-expressions, functions over S-expressions

03/19

trees and forests: functions, design

Lab 7

using local and loops,

 

WEEK 10

03/23

processing two complex inputs

Hw. Set 9

due 03/24, 7pm

03/25

merge sort

03/26

EXAM: In class

Lab 8

S-expressions, with loops

 

WEEK 11

03/30

generative recursion

Hw. Set 10

due 04/01, 7pm

04/01

generative recursion

04/02

graphs

Lab 9

X-expr, diving into X-expr -- DSLs

 

WEEK 12

04/06

graph traversal

Hw. Set 11

due 04/08, 7pm

04/08

accumulators

04/09

speed from accumulators

Lab 10

Generative Recursion

 

WEEK 13

04/13

BSL interpreter

Hw. Set 12

due 04/14, 7pm

04/15

BSL interpreter

04/16

review, wrap-up

Lab 11

 

WEEK 14

____

Patriots’ Day

04/22

EXAM: In class

A semester can unfold in unpredictable ways. Therefore the detailed syllabus is subject to changes