> On Dec 28, 2015, at 11:46 AM, Matthew Johnson via swift-evolution
> <[email protected]> wrote:
>
>
>> On Dec 28, 2015, at 1:39 PM, Stephen Celis <[email protected]> wrote:
>>
>> I'm not sure I understand the use case. Aren't these optimizations that
>> could be better handled by the compiler? Do we really want to provide hints
>> like these manually in our own libraries? Instead of `value: Int? = nil`,
>> why not `value: Int = 42`?
>
> I agree that part of this is simply an optimization. The part that was
> interesting enough that I thought it is worth sharing is that it could
> improve resilience in a way that a default value does not allow.
>
> That said, it is not a “proposal”. I’m not sure whether it is really worth
> considering or not. But I think it is interesting enough to toss out to the
> community and see what the response is.
You can provide resilience with a non-optional parameter by making the default
argument the result of calling a resilient function (or evaluating a resilient
property):
@availability(x.y)
internal func defaultForFoo() -> Int { return 941 }
public func foo(value: Int = defaultForFoo()) { }
-Joe_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution