Re: [swift-evolution] [Pitch] Rename protocol<> to Any<>

2016-05-21 Thread Adrian Zubarev via swift-evolution
One more thing, I would also add the ability to allow something like this: protocol A {} protocol B {} // Here `type` can be `protocol`, `class`, `struct` or `enum`. type C: any {} Where today is only possible to express something like this: protocol A {} protocol B {} typealias AB = any /

Re: [swift-evolution] [Pitch] Rename protocol<> to Any<>

2016-05-20 Thread Matthew Johnson via swift-evolution
> On May 20, 2016, at 10:07 PM, Austin Zheng wrote: > > These aren't really my points, I just copied them out of the other > sub-thread. I'm sure there will be a separate review period, during which > many more people will probably join in with their opinions :). I understand that. You asked

Re: [swift-evolution] [Pitch] Rename protocol<> to Any<>

2016-05-20 Thread Austin Zheng via swift-evolution
These aren't really my points, I just copied them out of the other sub-thread. I'm sure there will be a separate review period, during which many more people will probably join in with their opinions :). Austin On Fri, May 20, 2016 at 7:59 PM, Matthew Johnson wrote: > > On May 20, 2016, at 9:10

Re: [swift-evolution] [Pitch] Rename protocol<> to Any<>

2016-05-20 Thread Matthew Johnson via swift-evolution
> On May 20, 2016, at 9:10 PM, Austin Zheng wrote: > > (Trying to move the conversation back to this thread to un-hijack Adrian's > thread.) > > In terms of Any<> vs any<>, I don't have any strong feelings and I think > there are good arguments on both sides. I'm going to leave the proposal a

Re: [swift-evolution] [Pitch] Rename protocol<> to Any<>

2016-05-20 Thread Austin Zheng via swift-evolution
(Trying to move the conversation back to this thread to un-hijack Adrian's thread.) In terms of Any<> vs any<>, I don't have any strong feelings and I think there are good arguments on both sides. I'm going to leave the proposal as Any<> but put a section in the 'Alternatives' discussing Any<>

Re: [swift-evolution] [Pitch] Rename protocol<> to Any<>

2016-05-19 Thread Adrian Zubarev via swift-evolution
I assume you meant to use Any and not protocol above. No, I was wondering why Any> would create a warning whereas protocol does not today. They can all be interpreted, but: - they provide multiple ways of expressing the same concept - the additional uses of Any detract from code clarity - it is p

Re: [swift-evolution] [Pitch] Rename protocol<> to Any<>

2016-05-19 Thread Austin Zheng via swift-evolution
Forbidding redundant use of protocol<...>/Any<...> would be a great follow-up proposal. Mercifully, there are few interdependencies between the two proposals - you could conceivably propose it even if if Any<...> were rejected, and just have it apply to protocol<...>. Austin > On May 19, 2016,

Re: [swift-evolution] [Pitch] Rename protocol<> to Any<>

2016-05-19 Thread David Waite via swift-evolution
> On May 19, 2016, at 1:11 AM, Adrian Zubarev via swift-evolution > wrote: > > Austin do we really need this 3rd proposal? This makes my original one really > a waste of time. I was trying to solve https://openradar.appspot.com/20990743 > with the orig

Re: [swift-evolution] [Pitch] Rename protocol<> to Any<>

2016-05-19 Thread Austin Zheng via swift-evolution
Sorry, you're right about the timeframe. The timeframe I was looking at was for the DP release, not the final release. What I was thinking of was Joe Groff's comment in the other thread: "I think any discussion of extending existentials has to be considered out of scope for Swift 3, though, so

Re: [swift-evolution] [Pitch] Rename protocol<> to Any<>

2016-05-19 Thread Adrian Zubarev via swift-evolution
Is it really in a month? Who said that? Chris told everyone that until August we can still talk about changes for Swift 3. The evolution repository says Swift 3 will drop late this year not mid. But it’s the core team to decide which proposals they would prefer. This one would be way easier to c

Re: [swift-evolution] [Pitch] Rename protocol<> to Any<>

2016-05-19 Thread Austin Zheng via swift-evolution
I've come to the conclusion that the best course of action is to propose this syntax-only change for Swift 3, and then advance the generalized existential proposal after Swift 3 ships. You can ask the reviewers to consider your proposal instead of this one, but given that the Swift 3 release dat

Re: [swift-evolution] [Pitch] Rename protocol<> to Any<>

2016-05-19 Thread Adrian Zubarev via swift-evolution
Austin do we really need this 3rd proposal? This makes my original one really a waste of time. I was trying to solve https://openradar.appspot.com/20990743  with the original `Any<>` proposal when Swift 3 ships. Your other proposal would enhance it without introducing breaking changes. To that e

Re: [swift-evolution] [Pitch] Rename protocol<> to Any<>

2016-05-18 Thread David Waite via swift-evolution
My feedback is that we should narrow what is acceptable for Any as much as possible, because relaxing restrictions in the future won’t break existing code. To that end, I’d suggest Any<>,Any, and Any> all cause warnings. -DW > On May 19, 2016, at 12:43 AM, Austin Zheng wrote: > > Does anyon

Re: [swift-evolution] [Pitch] Rename protocol<> to Any<>

2016-05-18 Thread Austin Zheng via swift-evolution
Does anyone want to speak up in favor of 'Any<>'? The more I think about it the more I think 'Any' should just be the single, canonical form. Austin > On May 18, 2016, at 11:33 PM, Colin Barrett > wrote: > > There's no need for this, that's what I was trying to get across. It's > (likely) a

Re: [swift-evolution] [Pitch] Rename protocol<> to Any<>

2016-05-18 Thread Colin Barrett via swift-evolution
There's no need for this, that's what I was trying to get across. It's (likely) a special case in the grammar right now. If we eliminate Any<>, from the point of view of syntax, both Any and Any are just a built in type and normal application of generic arguments (to a built in type). -Colin (

Re: [swift-evolution] [Pitch] Rename protocol<> to Any<>

2016-05-18 Thread Austin Zheng via swift-evolution
I think this is a good idea - the implementation of Any ( = Any<>) should not be specified to be a typealias. (And this would resolve the idea Colin brought up.) To David's points (to avoid clogging up the list): - 'Any' is still valid, and has the same meaning as it did before. - 'Any<>' shoul

Re: [swift-evolution] [Pitch] Rename protocol<> to Any<>

2016-05-18 Thread Brent Royal-Gordon via swift-evolution
> Swift 3.0 focuses on making breaking changes that prepare the way for > features to be introduced in future releases. In that spirit, I would like to > solicit feedback on a very simple proposal: renaming 'protocol<>' to 'Any<>', > as described in the 'Completing Generics' manifesto. > > The

Re: [swift-evolution] [Pitch] Rename protocol<> to Any<>

2016-05-18 Thread David Waite via swift-evolution
I’m a fan (mostly because I think it helps existential types, which have blocked quite a few library projects of mine), but I do have a few questions about the impact of the proposal - I assume ‘Any' is still valid? - In that case, would 'Any<>' be equivalent to ‘Any’, or a warning/error? - What

[swift-evolution] [Pitch] Rename protocol<> to Any<>

2016-05-18 Thread Austin Zheng via swift-evolution
Hello all, Swift 3.0 focuses on making breaking changes that prepare the way for features to be introduced in future releases. In that spirit, I would like to solicit feedback on a very simple proposal: renaming 'protocol<>' to 'Any<>', as described in the 'Completing Generics' manifesto. The pro