Learning the art of the meta-program