Teaching

Haskell at Sirius

  1. Basic syntax
  2. Algebraic data types

Practical Haskell mini-course

  1. Testing
  2. Type-level Naturals
  3. Heterogenous data structures
  4. Universals/existentials and Typeable
  5. Finally tagless eDSL
  6. Generics and servant
  7. Performance and profiling

Types in programming languages

  1. Syntax & semantics
  2. Simply-typed lambda calculus
  3. Normalization. PCF
  4. ADTs and μ-recursive types
  5. System F
  6. System Fω
  7. Dependent types
  8. Pure type systems
  9. Type checking and co
  10. Catamorphisms
  11. Subtyping
  12. Existential types
  13. Other topics