Yep, statically typed languages tend to have no option but to handle this right. Otherwise, they risk unsoundness: Consider what would happen if you did `val x = &quot;foo&quot;` instead of `val x = 0`.<p>But there&#x27;s still no type-level distinction between immutable and mutable bindings, which is why included Scala in the “anything goes” category.