Most people treat the static vs dynamic debate as a foregone conclusion, but in practice type systems restrict the expressive power of programming languages in ways that leak complexity to developers.
New article: Type systems are leaky abstractions — the case of Map.take!/2