Working through Modern Compiler Implementation in ML