> On Jun 19, 2017, at 1:58 PM, Stephen Canon via swift-evolution
> <swift-evolution@swift.org> wrote:
>> On Jun 19, 2017, at 11:46 AM, Ted F.A. van Gaalen via swift-evolution
>> <swift-evolution@swift.org <mailto:swift-evolution@swift.org>> wrote:
>>
>> var result: Float = 0.0
>> result = float * integer * uint8 + double
>> // here, all operands should be implicitly promoted to Double before the
>> complete expression evaluation.
>
> You would have this produce different results than:
>
> let temp = float * integer * uint8
> result = temp + double
>
> That would be extremely surprising to many unsuspecting users.
>
> Don’t get me wrong; I *really want* implicit promotions (I proposed one
> scheme for them way back when Swift was first unveiled publicly).
I don't! At least not for floating point. It is important for both reliable
behavior and performance that programmers understand and minimize the
conversions they do between different floating-point types.
John.
_______________________________________________
swift-evolution mailing list
swift-evolution@swift.org
https://lists.swift.org/mailman/listinfo/swift-evolution