InfoQ Homepage Presentations Code Generation on the JVM: Writing Code that Writes Code
Code Generation on the JVM: Writing Code that Writes Code
Summary
Hamlet D`Arcy demonstrates some of the Groovy tools useful to increase productivity by generating code at compile time: Project Lombok and AST Transforms.
Bio
Hamlet D'Arcy is an active member of the Groovy Users of Minnesota and the Object Technology User Group, a committer on the Groovy project and CodeNarc, and a contributor on a few open source projects (including JConch and the IDEA Groovy Plugin). He blogs regularly at http://hamletdarcy.blogspot.com and can be found on Twitter as HamletDRC.
About the conference
SpringOne 2GX is a collocated event covering the entire Spring ecosystem and Groovy/Grails technologies. SpringOne 2GX is a one-of-a-kind conference for application developers, solution architects, web operations and IT teams who develop, deploy and manage business applications. This is the most important Java event of 2010, especially for anyone using Spring technologies, Groovy & Grails, or Tomcat. Whether you're building and running mission-critical business applications or designing the next killer cloud application, SpringOne 2GX will keep you up to date with the latest enterprise technology.
Community comments
Black magic
by Veggen Skrikk,
Re: Black magic
by Steve Thompson,
Double checked locking
by Veggen Skrikk,
Black magic
by Veggen Skrikk,
Your message is awaiting moderation. Thank you for participating in the discussion.
Don't like Roo. As you said yourself, it's magic, and it's not a compliment.
You know how .Net has partial classes? Well, there's a reason Java doesn't have that. Splitting the same class into multiple files is ewwww.
Groovy, on the other hand, is mostly cool.
P.S.
You make that "tsk" sound way too often close to the mic, so it's sort of annoying.
Double checked locking
by Veggen Skrikk,
Your message is awaiting moderation. Thank you for participating in the discussion.
Double checked locking you used is not a good idea.
Here's why: www.javacodegeeks.com/2011/03/dreaded-double-ch...
Re: Black magic
by Steve Thompson,
Your message is awaiting moderation. Thank you for participating in the discussion.
'Ewwww' meaning what, exactly?
As someone who has been creating tools that generate .Net source code, partials are a tremendously useful feature, as the language designers anticipated. The fact that they don't exist in Java makes it much more difficult for me to add the same value in that language. I think it is a real shame that people still limit their way of thinking about the feature set that a modern language should have to a language (Java in this case) that has barely changed in the last half decade or more.