I think I should emit high-level code and reduce it to actual machine code later under whatever model (cons cell heap, etc.)