苹果Swift开源生态又添新成员

网友投稿 270 2022-11-01

苹果Swift开源生态又添新成员

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

指数函数:exp,expMinusOne

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

三角函数:cos,sin,tan

反三角函数:acos,asin,atan

双曲函数:cosh,sinh,tanh

反双曲函数:acosh,asinh,atanh

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

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

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

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

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:ELK学习笔记之ELK6.0 X-pack设置用户名和密码
下一篇:Java Spring boot实现生成二维码
相关文章

 发表评论

暂时没有评论,来抢沙发吧~