Programming Languages
Syntax and Grammar
Semantics
Lambda Calculus
Functional Programming
Racket
Recursion