Source-code generation