An interpreter for a subset of the C programming language written in OCaml