Since OCaml is a functional programming language, it is easy to create and pass around functions in OCaml programs.
The function is called a "higher-order function" because it accepts another function () as an argument.