TODO: write introduction for “Idioms for Polymorphism and Templates (Revisited)”.
TODO: expand this section.