&gt; once you get past fighting the compiler<p>Actually, it&#x27;s the very process of “fighting the compiler” (as you call it, though I prefer to view it as collaboration between a human who knows what he wants and a program whose logic codifies what is possible) that makes it easier to write correct programs in Rust&#x2F;Haskell&#x2F;ML&#x2F;$FAVORITE_TYPEFUL_LANGUAGE.