← Back to context

Comment by almostgotcaught

2 days ago

> "We've made this mistake before so for consistency we need to repeat it" is such a bad idea.

no it's not. you literally have no other choice. you cannot add scopes after the fact - it is a breaking change. you cannot have some parts of the language have scopes and others not - it's so much worse for the user. think about human languages and which ones get quoted as being the hardest to learn (those with many exceptions). you're just wrong.

Or stated another way, adding block scoping necessitates Python 4. You could be cheeky and make it work in a backwards compatible way by adding new opt-in syntax but it wouldn't fix match nor be terribly ergonomic having to declare it all the time.