Schedule
- : Meeting 1
What is FP? Intro to REPL and evaluating expressions.
- : Meeting 2
Tuples, Booleans, partial application, operator sections, pattern guards.
- : Assignment 1
- : Meeting 3
Recursive functions, evaluating expressions.
- : Meeting 4
List constructors and pattern matching.
- : Assignment 2
- : Meeting 5
Implementing list operators, syntax of list comprehensions.
- : Meeting 6
Intro to type syntax and some built-in type classes.
- : Assignment 3
- : Meeting 7
Type classes including
Show,Eq,Ord,Enum,Bounded. Defining type synonyms and enumerated types. Brief intro toMaybetype. - : Meeting 8
More on the
Maybetype, includinglookupandfmap. Thecaseexpression, field selectors, and recursive data types. - : Assignment 4
- : Meeting 9
Function composition using
.and<=<, theEithertype. - : Meeting 10
Defining a bounded stack type,
FunctorandBifunctortype classes. - : Assignment 5
- : Meeting 11
The
Monoidtype class. - : Meeting 12
The
Orderingtype, laziness, infinite data structures. - : Assignment 6
- : Meeting 13
Data types for abstract syntax trees.
- : Meeting 14
Variable environments for expression trees, applicative functors.
- : Meeting 15 [exam]
Midterm exam.
- : Meeting 16
Pseudo-random number generation and threading state.
- : Assignment 7
- : Meeting 17
Generalizing PRNG operations, leading to
always/andThen. - : Meeting 18
Monad operations for
Maybeand List. - : Assignment 8
- : Meeting 19
Remaining topics TBD…
- : Meeting 20
- : Assignment 9
- : Meeting 21
- : Meeting 22
- : Meeting 23
- : Meeting 24
- : Assignment 10
- : Meeting 25
- : Meeting 26
- : Meeting 27
- : Assignment 11
- : Meeting 28
- : Assignment 12