首页>新闻>苹果资讯>苹果发布 Swift 的数学计算项目:Swift Numerics

苹果发布 Swift 的数学计算项目:Swift Numerics

2019-11-15
2946
来源:cnBeta

Swift 标准函数库团队成员 Steve Canon 宣布 Swift 开源生态又添一员 —— Swift Numerics。这是用于 Swift 的 Numerical API,源码托管在 GitHub 上,旨在迅速填补标准库现有 API 中的一些重要空白,并为 Swift 编程开拓新领域。


苹果发布 Swift 的数学计算项目:Swift Numerics


据介绍,Swift Numerics 可为 Swift 开发者提供构建数值运算的基础,相关的数值运算模块都会捆绑在一起,并以独立的 Swift 组件发布。


Steve Canon 已在 Swift Numerics 的 GitHub 仓库中内置了两个呼声甚高的数学计算模块,分别是实数模块(Real Number)和提供复数运算的复数(Complex Number)模块。SE-0246 提案建议在 Swift 中加入基础数学函数 API,提供诸如三角函数与对数等通用运算。这项提案已经被接受,但由于编译器的限制,该 API 还不能被加到标准函数库中,因此实数模块将以独立的模块提供 API,开发者现在可在项目中使用这些功能。


实数模块定义了三个协议。最通用的是 ElementaryFunctions,它提供以下函数:


指数函数:exp,expMinusOne


对数函数:log,log(onePlus:)


三角函数:cos,sin,tan


反三角函数:acos,asin,atan


双曲线函数:cosh,sinh,tanh


反双曲线函数:acosh,asinh,atanh


幂函数和根函数:pow,sqrt,root


复数模块则是创建于基础实数类型之上(官方说法是复数模块基于实数模块构建)。我们都知道复数在数学计算中经常会用到,尤其是在进行傅立叶转换的时候,处理音频或是电路仿真时都会用到复数。Steve Canon 提到,在开发者日常使用时,函数库通常会自动隐藏这些复数消息,但是当要开发相关函数库时,复数模块会是很重要的工具。


Steve Canon 还解释了不在标准函数库中提供 Swift Numerics 功能,而要利用组件的形式发布的原因。他表示这其中存在许多考量,但最主要的原因是,他认为并非所有内容都应该放进标准函数库中。随着时间变迁,Swift Numerics 中的部分功能可能会被放进标准函数库中,但在默认情况下,某些模块不应默认加入到每一个项目里,它们应有一个自己专属的地方,而 Swift Numerics 就是这类数学计算模块的集合,就像 SwiftNIO 组件是专门提供网络相关功能一样。


另外,以组件打包的好处还包括 Swift Numerics 的更新将不受 Swift 版本发布的时间限制,开发者可以在进入稳定版之前,先发布测试模块进行试验。


Steve Canon 还提到,接下来他们还会为 Swift Numerics 加入重要的 ShapedArray 协议以及支持的类型,让开发者能方便地表达多维度的同质数据,此外还会增加对 Float16 的支持。


图文来自 cnBeta,如有侵权请联系删除。

标签: Apple
相关文章
  • 为什么要绑定Apple ID?

    本文主要介绍如何用爱思助手绑定Apple ID,以及绑定的安全性和必要性。

  • Apple Store 在线商店新增 Apple Card 专用支付选项

    据外媒 AppleInsider 报道,对于 Apple Card 的持有者来说,在 Apple Store 在线商店上购物变得稍微容易了一些,因为该虚拟市场现在提供了一个直接使用 Apple Card 支付的选项,以及更多传统的信用卡和 PayPal 替代品。虽然不是一键式的解决方案,但增加一个专门的 Apple Card 结账按钮,对于苹果信用卡服务的客户来说,还是一个值得欢迎的变化。现在用户可以通过 Apple Store 在线商店使用该支付选项,该链接出现在结账过程的支付...

  • 苹果分享最新广告:「Apple Card 来了!」

    苹果今天分享了一段全新的广告,主要介绍了最近上线的 Apple Card。上周,Apple Card 正式推出,美国地区iPhone用户可以在 Wallet 钱包应用中申请。在这段 Apple Card 广告中,苹果再次介绍了 Apple Card 各种优点,展示了 Wallet 应用中的 Apple Card 界面。Apple Card 来了!这是一种全新的信用卡,由苹果打造,不是银行。有了 Apple Card ,你可以更好的查看消费,同时还能获得每日返现。Apple Card 对于隐私和安全的追求达到了...

  • Apple 发布全新 WWDC 应用,并更名为「Apple Developer」

    苹果今天更新了 WWDC 应用,同时将应用的名字改为“苹果开发者(Apple Developer)”。苹果表示,全新的苹果开发者应用会提供来自全球苹果专家的深度资讯,包括开发者新闻、视频、WWDC 内容等。苹果开发者应用还可以用来加入苹果开发者计划,不过这个功能目前仅限于美国。苹果开发者订阅支持自动更新,方便开发者时刻保持账户可用状态。图文来自 MacX,如有侵权请联系删除。

  • Apple One 订阅服务全家桶确认

    据 Macrumors 报道,有消息称苹果将推出捆绑订阅服务,被称为 “Apple One”,根据外媒 9to5Google 发现的 Android 代码来看,这项服务将在不久后推出。外媒在适用于 Android 的 Apple Music 3.4.0 beta 中发现了 Apple One 捆绑订阅服务的迹象,证实 Apple Music 将成为服务捆绑软件的组成部分。在 Android 应用中,有这样的代码:<string name=”applemusic_with_aristotle_subtext”>Included in Apple One %s</string...