[swift-evolution] Reconsidering SE-0003 Removing var from Function Parameters and Pattern Matching

Erica Sadun erica at ericasadun.com
Thu Jan 28 12:05:10 CST 2016


Do you realize how much confusion it would save if Swift just went with

if bind foo = bar {...}

with let semantics? 

-- Erica

> On Jan 28, 2016, at 11:03 AM, Joe Groff via swift-evolution <swift-evolution at swift.org> wrote:
> 
> 
>> On Jan 28, 2016, at 12:43 AM, Brent Royal-Gordon <brent at architechies.com> wrote:
>> 
>>> We have a lot of evidence that 'if var' confuses peopleā€”a lot of users think that 'if var' and 'var' bindings in case patterns will write back to the original value when this isn't the case.
>> 
>> Can we address this with a diagnostic?
>> 
>> 	var bar: Int? = 1
>> 	if var foo = bar {
>> 		foo += 1	// Warning: Value is never used after modification (foo is a copy, not an alias)
>> 	}
>> 	print(bar)
> 
> Good idea.
> 
> -Joe
> _______________________________________________
> swift-evolution mailing list
> swift-evolution at swift.org
> https://lists.swift.org/mailman/listinfo/swift-evolution



More information about the swift-evolution mailing list