Metaprogramming examples