cows
moo
ocaml
42
abstraction
functor