Versions Compared

Key

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

...

Week

Day

Date

Topic

Work AssignedWork Due

1

Tues

Aug 23

Overview, Motivation

  
 ThurAug 25What are Types, Core ScalaHwk 0 

2

Tues

Aug 30

Type Checking, Conditional Functions, Compound DatatypesDoubles, Programming with Intention, The Design Recipe

  
 ThursSep 01Grading, DrScala, Tests, Binary Methods, OperatorsHwk 1Hwk 0

3

Tues

Sep 06

Abstract Datatypes, Exceptions

  
 ThurSep 08

Exceptions, Overloading

  

4

Tues

Sep 13

Recursively Defined Datatypes

  

 

Thur

Sep 15

First-Class Functions

Hwk 2Hwk 1

5

Tues

Sep 20

Functions as Values, Parametric Types, Covariance

  

 

Thurs

Sep 22

Checking Variance, For-Expressions

  

6

Tues

Sep 27

Translating For-Expressions, The Environment Model

  

 

Thur

Sep 29

Lexical vs Dynamic Scoping, Call-by-Name, Traits 1

Hwk 3Hwk 2

7

Tues

Oct 04

Traits 2, Generative Recursion

  

 

Thurs

Oct 06

More Generative Recursion, Accumulators

  

8

Tues

Oct 11

MIDTERM RECESS

  

 

Thur

Oct 13

More Accumulators, Tail Recursion

Hwk 4Hwk 3

9

Tues

Oct 18

Leftist Heaps, Functional Red-Black Trees

  

 

Thur

Oct 20

Red Black-Trees Continued, Stream Processing

  

10

Tues

Oct 25

Guest Lecture: TBD

  

 

Thur

Oct 27

Variable Assignment and Environments

  

11

Tues

Nov 01

Mutable Objects, Equality, Memoization 

  

 

Thur

Nov 03

The State Monad, Mechanical Proof Checking

Hwk 5Hwk 4

12

Tues

Nov 08

Programs as Proofs and the Curry Howard Isomorphism

  

 

Thur

Nov 10

Additional Scala Features, Extractors, Parser Combinators

  

13

Tues

Nov 15

More Parser Combinators, Actors and Concurrency

  

 

Thur

Nov 17

Tactical Theorem Proving

Hwk 6Hwk 5
14TuesNov 22Guest Lecture: TBD  

 

Thur

Nov 24

THANKSGIVING

  

15

Tues

Nov 28

Functional Distributed Computing

  
 ThurDec 01Course Wrap Up Hwk 6