Midterm info: OCaml programming Pattern of recursion User-defined data types Type systems Type checking Unification algorithm Type inference (a little lighter on midterm) Regular expressions Finite automata (NFAs & DFAs) Grammars & ambiguity