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

 

Functional Abstraction and Polymorphism  Oct 6

9

Th

Sep 24

Functions as Values

Homework 4Oct 5

10

Tu

Sep 29

Generative (Non-structural) Recursion

 

 Oct 6

11

Th

Oct 01

Lazy Evaluation and Non-strict Constructors

  

12

Tu

Oct 06

Techniques for Implementing Lazy Evaluation

Homework 5Oct 14

13

Th

Oct 08

A Glimpse at Imperative Raceket and Memoization

  

 

Tu

Oct 13

Racket Review

Sample Exam

Sample Exam Key

 

13

Th

Oct 15

Java Design Recipe & Functional Design Patterns in OOP

OO Design Notes 
 FriOct 16Midterm  

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

  

...