Your macro argument is a terrible one, you can do exactly the same thing with any sane language (and indeed I have done, getting python to create boilerplate java)
You dont need macros for this (which your post shows since I cant see any defmacro used there)