[swift-evolution] Which functionality should be covered by a native Swift math/numerics library that ships with the standard lib?

Xiaodi Wu xiaodi.wu at gmail.com
Wed Aug 3 10:10:10 CDT 2016


On Wed, Aug 3, 2016 at 9:48 AM, Nevin Brackett-Rozinsky via swift-evolution
<swift-evolution at swift.org> wrote:

> A few things immediately spring to mind:
> • Fixed-size arrays
> • An optimized Matrix type
> • Swifty syntax for Fourier transforms
> • A numerical integrator (or diff-eq solver!)
> • BigInt capabilities
>
> The first of these (fixed-size arrays) will probably require compiler
> support.
>
> The rest can already be done in a library, except I believe they will hit
> the “generics cannot be specialized across module boundaries” slowdown, and
> must be explicitly specialized for common numeric types to avoid it. (Has
> this been fixed yet? Are there plans to?)
>

The underlying libraries provide optimized versions of matrix functions and
Fourier transforms only for particular numeric types anyway. It'd be Swifty
to have Matrix<MySpecialInt>, but doing matrix multiplication with that
simply isn't going to be performant.


>
> Nevin
>
>
>
> On Wed, Aug 3, 2016 at 8:41 AM, Björn Forster <swift-evolution at swift.org>
> wrote:
>
>> Hello Swift community,
>> to make use of Swift more appealing and useful for science, engineering
>> and finance and everything else involving actually calculating things, I
>> think it would be a big step forward if Swift would ship with its own
>> math/numerics library.
>>
>> Wouldn't it be great if Swift would offer functionality similar to Numpy
>> in its native math lib? It think it would be great to have a "standard"
>> annotation for vector arithmetic that the Swift community has agreed on and
>> that scientific packages can build on.
>>
>> Which functionality should be covered by a Swift's math lib and where
>> should be drawn the line?
>>
>> Any thoughts?
>>
>> (If it is not the right time now to talk this topic, as it is not
>> mentioned in the goals for Swift 4 by Chris, I apologize for bringing this
>> up now. But I think then this should be discussed later at some point not
>> in the infinite future)
>>
>> Björn
>>
>> _______________________________________________
>> swift-evolution mailing list
>> swift-evolution at swift.org
>> https://lists.swift.org/mailman/listinfo/swift-evolution
>>
>>
>
> _______________________________________________
> swift-evolution mailing list
> swift-evolution at swift.org
> https://lists.swift.org/mailman/listinfo/swift-evolution
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20160803/b6057e0e/attachment.html>


More information about the swift-evolution mailing list