Begin implementing code generation