Modern compiler implementation in ML (ocaml and z80)