> On Apr 20, 2016, at 12:37 PM, Dave Abrahams via swift-evolution 
> <[email protected]> wrote:
> 
> 
> on Wed Apr 20 2016, Chris Lattner <[email protected]> wrote:
> 
>> Hello Swift community,
>> 
>> The review of "SE-0068: Expanding Swift Self to class members and value 
>> types"
>> begins now and runs through April 25. The proposal is available here:
>> 
>> https://github.com/apple/swift-evolution/blob/master/proposals/0068-universal-self.md
> 
> Caveat: somewhat scattered response, probably after insufficient
> review; apply salt liberally.
> 
> This looks like a good idea overall to me, but I think it may leave
> important uses for Self on the floor.  For example, I still want to
> write this:
> 
>  struct SomeType {
>    func f(x: Self) {}
>  }
> 
> Does the proposal make that work in some way that I've overlooked?  
> 
> IMO it's a shame that you can't take a protocol body, dump it into your
> type's body, and fill in the implementations to satisfy a conformance
> without finding all the instances of “Self” and replacing them with your
> type's name, and it would be sad if this proposal didn't address that
> somehow.  In general, I'm concerned that we may be making “Self” mean
> two very different things in different contexts: IIUC one is a type
> that's fully-resolved at compile time, and the other one is a value that
> holds a metatype.  If there were less of a wall between the two
> uses/contexts, that would make the proposal more palatable to me.

It kind of did address this until late last night. I was worried that proposing 
#Self and Self at the
same time would be divisive. The point of #Self would be a compile-time 
replacement of the name
of the defining type, vs the run-time evaluation of Self. Trying to propose two 
things at once 
seemed like a difficult sell.

If there's sufficient support for doing so, I can add it back in as a revision 
to the proposal if
the core team requests it.

-- E

_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to