Thu Jun 14 21:03:01 EDT 2018

In defence of design patterns

You can't have simple implementations when they are shared broadly:
everyone needs something just a little different, and this adds up.

That is where design principle reuse makes sense: keep implementations
minimal, but reuse ideas.

Maybe this is also in defence of metaprogramming: complexity at the
metalevel is usually not a big deal.