some experimenting with code generation