more on code generation