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,

Homework 2

HTDP Part 3

Sep 16
5ThSep 10Mutually Recursive Definitions and Help FunctionsHTDP Ch 15-17Sep 17

6

Tu

Sep 15

Local Definitions and Lexical Scope

Homework 3

 HTDP Parts 5-6

Sep 23

7

Th

Sep 17

Lambda the Ultimate and Reduction Semantics

LawsOfEval.pdfSep 26

8

TuSep 19

 

Abstracting Computational Patterns as Functions Oct 6

9

Th

Sep 24

 

Homework 4* 

10

Tu

Sep 29

 

Homework 5#

Oct 6

11

Th

Oct 01

Macros and Lazy Evaluation;Memoization

  

12

Tu

Oct 06

MemoizationHomework 6Oct 15

13

Th

Oct 08

Racket Review

Mid-term [Oct 09[] 

 

Tu

Oct 13

Midterm Recess (no classes)

  

13

Th

Oct 15

Java Design Recipe & Functional Design Patterns in OOP

OO Design 

14

Tu

Oct 22

Data-driven Structural Recursion in JavaHomework 7Oct 29

15

Th

Oct 24

Anonymous class instances vs anonymous functions

  

16

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

  

18

Tu

Nov 05

Typed Lambda Calculus

Homework 9#Nov 12

19

Th

Nov 07

Polymorphic Lambda Calculus & Implicitly Polymorphic Lambda Calculus

  

20

Tu

Nov 12

Core Haskell (call-by-name)

Homework 10Nov 19

21

Th

Nov 14

Haskell Pattern Matching

  

22

Tu

Nov 19

Haskell Type Classes

Homework 11Dec 16

23

Th

Nov 21

Racket letcc; Semantics of Haskell Exceptions

  

...