[swift-evolution] [Review #2] SE-0117: Default classes to be non-subclassable publicly

Tino Heth 2th at gmx.de
Tue Jul 19 05:42:40 CDT 2016


> Am 19.07.2016 um 09:43 schrieb Brent Royal-Gordon via swift-evolution <swift-evolution at swift.org>:
> 
> We need to be bold and take a chance. If it doesn't work out, we can undo it. But if it does work out, we'll be better for it.
It's hard for me to associate a proposal that is grounded on fear with the word "bold", yet the essence of the message is correct — but Imho it is another "in a perfect world" statement:
In reality, nobody will measure the effect of this change, and those in favor of the proposal might even call the absent of a horrible catastrophe a "proof" for their opinion.
So, what could this catastrophe actually be? Supporters of 0117 educated us that forking is a good thing, and that's about the worst thing I can imagine (exorbitant pessimism left aside)…
We won't have a "free" Swift and a "restricted" Swift to check what people actually prefer, and even if we had, there would be those saying that their opinion is the only truth, no matter what the majority thinks.

The bad effects of the proposal are no obvious danger, like a wild crocodile that threatens you — it is more like a swarm of mosquitos that feasts on your blood and dampens your mood.
I'm am convinced this change will be a source of constant annoyance, but people are very good at accepting constant annoyance (they have even a noticeable track record in accepting things that are much worse than annoyance: It took us hundreds of years to realize that burning old ladies with a talent for leechcraft might not be the smartest idea...).

Despite claims by others, this is not about proofs or facts at all, it is just about attitude, and attitude is hard to change. This article (http://martinfowler.com/bliki/DirectingAttitude.html) was a big help for me to understand the underlying motives which were absolutely alien to me, and convinced me that there is no merit in discussion anymore:
It's misfortune for our party that those who decide the default belong to the other camp, but that's life, and we have to accept it.

So, regarding the problem of wether subclassing and overriding should be discouraged, we have two contrary positions, and Swift clearly discarded the "enabling attitude"… for those who share this point of view, it is a frustrating decision after a frustrating debate on a frustrating topic, so please be patient with us who walk the narrow path between cynicism and resignation ;-)

Swift is a new language and a projection surface for those taking part in the discussion here, and it is unavoidable that there will be situations that are disappointing for parts of the community*.

- Tino

* although I think that asking an ornithologist for counsel on the choice for the name could have saved us from some irritation... "Cagebird" sounds nice as well, and it is a much better fit for the goals of of 0117, which really don't match with the characteristics of its eponymist ;-)


More information about the swift-evolution mailing list