Intended to be nearly equivalent to the CLikeCompiler, except written in haskell, and potentially extended into OO/FP land, depending on motivation