I immediately agreed with what you wrote, but now there&#x27;s a voice in the back of my head asking &quot;if this is so obviously right, why is it just happening now, after 2.0? It&#x27;s not like this Lattner guy doesn&#x27;t know what method calls cost...&quot;<p>A post last week featured Lattner writing about Swift treating methods as final when they weren&#x27;t declared that way (<a href="https:&#x2F;&#x2F;lists.swift.org&#x2F;pipermail&#x2F;swift-evolution&#x2F;Week-of-Mon-20151207&#x2F;001948.html" rel="nofollow">https:&#x2F;&#x2F;lists.swift.org&#x2F;pipermail&#x2F;swift-evolution&#x2F;Week-of-Mo...</a>). I wonder if the early thought was that they&#x27;d get enough mileage out of those &quot;cheats&quot;, and then later decided that final should be the default.