> On Oct 5, 2015, at 19:19 , Jens Alfke <j...@mooseyard.com> wrote:
> 
> 
>> On Oct 5, 2015, at 6:59 PM, Rick Mann <rm...@latencyzero.com> wrote:
>> 
>> Huh. I continue to be bothered by the ambiguity/variability of "let"*. Is 
>> the reference immutable or the thing it points to?
> 
> A variable (var or let) doesn’t “point to” a struct. It _contains_ the 
> struct. I.e. it’s a value, not a reference.
> 
> It’s just like in C or C++, really. Given a struct Foo,
>       const Foo x;  // a value: x is immutable; you can’t change its fields
>       Foo* const x; // a reference: the variable x can’t be changed, but the 
> Foo it points to can
> 
> The thing Swift doesn’t have that C/C++ do is
>       const Foo *x; // the Foo can’t be changed through this reference 
> (though the value of x can)
> The reason this was left out is probably that it doesn’t fit at all with 
> Objective-C and the Cocoa frameworks, which have no concept of a constant 
> reference to an NSObject.

In all this discussion, I forgot to bring up the containers: are they special? 
A "let" container can't be reassigned, nor can its contents be changed. How is 
this implemented?

-- 
Rick Mann
rm...@latencyzero.com



_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to