[Pitch] Elide `some` in Swift 6

I very much disagree that knowing the difference between existentials and generics is a fundamental Swift skill.

To support this claim, I'll just remind that we have been writing Swift even before "existentials" were a thing. Go back to some Swift 1, 2, 3 codebases, and the discussions we were then having. Basically people would not care until they had problems with "PATs" (protocol with association types – we hear very much less about them these days). And then they would find a workaround. In the process, some would grab a solid understanding of existentials, some would not.

In my personal case, it has been a multi-years process. If you think about it, there's a lot of Swift to digest in order to get a full picture of existentials. Swift is quite a special language, with its focus on static compiler information and static dispatch, the strict application of the Liskov principle, advanced type system, etc.

In this fuzzy context, the Core Team has slowly but steadily built the tools that brought us to the present time. More and more developers have strengthened their skills about generics and existentials. The Swift forums is a nest of experts.

Meanwhile many developers still don't quite care, and yet they produce valid Swift code that runs on countless devices.

In this context, I very much welcome the experiments performed by @johnno1962. He needs more support.

7 Likes