Metaprograming example