Computer programming
Software engineering
Computing
Recursion
Binary trees
Data types
Category theory
Theoretical computer science
Tree
Linked list
Predicate
Anamorphism