additional metaprogramming no-nos