Software engineering
Computer programming
Computing
Functional languages
Control flow
Software design patterns
OCaml
Monad
Exception handling
Type system
Caml
ML