Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Week

Day

Date

Lecture Topic and Resources

Work AssignedWork Due

1

Tu

Aug 27

Motivation and the Elements (Constants) of Racket

HTDP Part 1 (Ch 1-8)Sep 03
 ThAug 29[Canceled for Hurricane Laura] Sep 05

2

Tu

Sep 01

Conditionals, Function Definitions and Computation by Reduction

Homework 1

Review Ch 8

HTDP Part 2 (Ch 9-10)

Sep 08
3ThSep 03

The Program Design Recipe for Racket focusing on recursion

on processing lists and natural numbers

Preface, 9.4

HTDP Part 2 (Ch 11-13)

Sep 10

4

Tu

Sep 08

Data Definitions, Data-driven Structural Recursion, and

Help Functions

Homework 2

HTDP Part 3

Sep 15
5ThSep 10Mutually Recursive DefinitionsHTDP Ch 15-17Sep 17

6

Tu

Sep 15

Generative Recursion

Homework 3

 HTDP Parts 5-6

Sep 22

7

Th

Sep 17

Accumulators and Tail Recursion

HTDP ?Sep 26

8

TuSep 19

 

Functions as Values and Anonymous FunctionsHomework 4!*Oct 6

9

Th

Sep 24

Local Definitions and Lexical Scope

  

10

Tu

Sep 29

Abstracting Computational Patterns as Functions

Homework 5*5#

 

11

Th

Oct 01

Macros and Lazy Evaluation;Memoization; Review; Functional Design Patterns in OOP

  

12

Tu

Oct 06

Java Design Recipe: OOP as an Extension of FPMemoizationHomework 6Oct

13

Th

Oct 08

Functional JavaRacket Review

Mid-term [Oct 09[] 

 

Tu

Oct 13

Midterm Recess (no classes)

  

13

Th

Oct 15Core Haskell

Functional Design Patterns in OOP

 Homework 2 

914

Tu

Oct 22

 Java Design Recipe, Data-driven Structural RecursionHomework 87 Oct 29

 15

Th

Oct 24 

Anonymous class instances vs anonymous functions

  

1016

Tu

Oct 29

 

  

Functional Java & OOP as an Extension of FP

Homework 8*Nov 12

17 

Th

Oct 31 

Pure Lambda Calculus; Call-by-value vs call-by-name

  

1118

Tu

Nov 05

 

  

Typed Lambda Calculus

Homework 9#Nov 12

19 

Th

Nov 07

Polymorphic Lambda Calculus & Implicitly Polymorphic Lambda Calculus

 Homework 4Homework 3 

2012

Tu

Nov 12

Core Haskell (call-by-name)

 Homework 10 Nov 19

 21

Th

Nov 14

Haskell Pattern Matching

  

1322

Tu

Nov 19

Haskell Type Classes

 Homework 11 Dec 16

 23

Th

Nov 21

Racket letcc; Semantics of Haskell Exceptions

Homework 5 Homework 4 

* Lectures slides not yet updated from last year are marked with an asterisk.