Working through https://ocaml.org/learn/tutorials/99problems.html Inspired by https://github.com/shrynx/99.re