Collection of functional templates for facilitated meta-programming