Metaprogramming -- programming with code generators or writing programs that themselves write code -- has numerous useful attributes, such as simplifying code maintenance and making it easier to craft boilerplate code. The first article of this series explained why metaprogramming is necessary, looked at some of the components of metaprogramming, showed how to build a code generator, and introduced language-sensitive macro programming.
One of the most under-used programming techniques is writing programs that generate programs or program parts. Learn why metaprogramming is necessary and look at some of the components of metaprogramming (textual macro languages, specialized code generators). See how to build a code generator and get a closer look at language-sensitive macro programming in Scheme
In an article introducing Ruby on Rails' Active Record, Bruce Tate suggests that Java could enjoy some of the benefits of Rails by taking a wrapping rather than a mapping approach to persistence. I think this misses the point. What Rails really demonstrates is the benefit of code generation.
PHP V5's new object-oriented programming features have raised the level of functionality in this popular language significantly. Learn how to use the dynamic features of PHP V5 to create objects that bend to fit your needs.