6/1: more compiler stuff. the compiler api is required