[swift-evolution] unums in Swift?
Matthew Johnson
matthew at anandabits.com
Mon May 9 11:05:14 CDT 2016
Sent from my iPad
> On May 9, 2016, at 10:44 AM, Stephen Canon <scanon at apple.com> wrote:
>
> What do you find interesting about them?
As an app developer I'm not even remotely a numerics expert so my understanding is probably superficial. The link I posted gave me the impression that they would avoid the errors that accumulate in floating point arithmetic.
>
> I haven’t spent more than a few hours reading about them (and the definition of “unum” seems to be a moving target, so I’m not sure that it would have been useful to study them further), but my rough thoughts are:
>
> - SORN are a cute alternative to intervals, but only feasible with *extremely* low precision formats.
>
> - For very low precision needs, fixed point or indexed numbers or lossy compression seem like better options for most cases.
>
> - For “typical” precision and dynamic range needs, hardware floating-point (possibly with a compressed storage format) is just as useful and orders of magnitude faster.
>
> - For limited dynamic range applications, fixed-point formats seem like a much better option (there’s a good opportunity here for library work to make using fixed-point arithmetic less error prone).
>
> - For very high dynamic range applications, fixed-point logarithms or level-index numbers seem like a better option.
>
> Unums are a cute way to mostly unify these ideas into a single type, but that doesn’t actually seem like a good idea to me. This is very much going to be a jack-of-all-trades, master-of-none situation.
Makes sense. Thanks for sharing your thoughts!
>
> That said, they are an *interesting* idea, so I wouldn’t discourage anyone from investigating them.
>
> – Steve
>
>> On May 7, 2016, at 3:08 PM, Matthew Johnson via swift-evolution <swift-evolution at swift.org> wrote:
>>
>> Unums sound very interesting (http://ubiquity.acm.org/article.cfm?id=2913029). I'm wondering if anyone working on numerics in Swift has considered an implementation in the standard library.
>>
>> Matthew
>>
>> Sent from my iPad
>> _______________________________________________
>> 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