Swift標(biāo)準(zhǔn)函數(shù)庫團(tuán)隊(duì)成員Steve Canon宣布Swift開源生態(tài)又添一員——Swift Numerics。這是用于Swift的Numerical API,源碼托管在GitHub上,旨在迅速填補(bǔ)標(biāo)準(zhǔn)庫現(xiàn)有API中的一些重要空白,并為Swift編程開拓新領(lǐng)域。
據(jù)介紹,Swift Numerics可為Swift開發(fā)者提供構(gòu)建數(shù)值運(yùn)算的基礎(chǔ),相關(guān)的數(shù)值運(yùn)算模塊都會(huì)捆綁在一起,并以獨(dú)立的Swift組件發(fā)布。
Steve Canon已在Swift Numerics的GitHub倉庫中內(nèi)置了兩個(gè)呼聲甚高的數(shù)學(xué)計(jì)算模塊,分別是實(shí)數(shù)模塊(Real Number)和提供復(fù)數(shù)運(yùn)算的復(fù)數(shù)(Complex Number)模塊。SE-0246提案建議在Swift中加入基礎(chǔ)數(shù)學(xué)函數(shù)API,提供諸如三角函數(shù)與對數(shù)等通用運(yùn)算。這項(xiàng)提案已經(jīng)被接受,但由于編譯器的限制,該API還不能被加到標(biāo)準(zhǔn)函數(shù)庫中,因此實(shí)數(shù)模塊將以獨(dú)立的模塊提供API,開發(fā)者現(xiàn)在可在項(xiàng)目中使用這些功能。
實(shí)數(shù)模塊定義了三個(gè)協(xié)議。最通用的是ElementaryFunctions,它提供以下函數(shù):
指數(shù)函數(shù):exp,expMinusOne
對數(shù)函數(shù):log,log(onePlus:)
三角函數(shù):cos,sin,tan
反三角函數(shù):acos,asin,atan
雙曲函數(shù):cosh,sinh,tanh
反雙曲函數(shù):acosh,asinh,atanh
冪函數(shù)和根函數(shù):pow,sqrt,root
復(fù)數(shù)模塊則是創(chuàng)建于基礎(chǔ)實(shí)數(shù)類型之上(官方說法是復(fù)數(shù)模塊基于實(shí)數(shù)模塊構(gòu)建)。我們都知道復(fù)數(shù)在數(shù)學(xué)計(jì)算中經(jīng)常會(huì)用到,尤其是在進(jìn)行傅立葉轉(zhuǎn)換的時(shí)候,處理音頻或是電路仿真時(shí)都會(huì)用到復(fù)數(shù)。Steve Canon提到,在開發(fā)者日常使用時(shí),函數(shù)庫通常會(huì)自動(dòng)隱藏這些復(fù)數(shù)消息,但是當(dāng)要開發(fā)相關(guān)函數(shù)庫時(shí),復(fù)數(shù)模塊會(huì)是很重要的工具。
Steve Canon還解釋了不在標(biāo)準(zhǔn)函數(shù)庫中提供Swift Numerics功能,而要利用組件的形式發(fā)布的原因。他表示這其中存在許多考量,但最主要的原因是,他認(rèn)為并非所有內(nèi)容都應(yīng)該放進(jìn)標(biāo)準(zhǔn)函數(shù)庫中。隨著時(shí)間變遷,Swift Numerics中的部分功能可能會(huì)被放進(jìn)標(biāo)準(zhǔn)函數(shù)庫中,但在默認(rèn)情況下,某些模塊不應(yīng)默認(rèn)加入到每一個(gè)項(xiàng)目里,它們應(yīng)有一個(gè)自己專屬的地方,而Swift Numerics就是這類數(shù)學(xué)計(jì)算模塊的集合,就像SwiftNIO組件是專門提供網(wǎng)絡(luò)相關(guān)功能一樣。
另外,以組件打包的好處還包括Swift Numerics的更新將不受Swift版本發(fā)布的時(shí)間限制,開發(fā)者可以在進(jìn)入穩(wěn)定版之前,先發(fā)布測試模塊進(jìn)行試驗(yàn)。
Steve Canon還提到,接下來他們還會(huì)為Swift Numerics加入重要的ShapedArray協(xié)議以及支持的類型,讓開發(fā)者能方便地表達(dá)多維度的同質(zhì)數(shù)據(jù),此外還會(huì)增加對Float16的支持。
-
蘋果
+關(guān)注
關(guān)注
61文章
24582瀏覽量
206644 -
SWIFT
+關(guān)注
關(guān)注
0文章
124瀏覽量
24640
發(fā)布評論請先 登錄
【置頂公告】視美泰開源鴻蒙系列產(chǎn)品業(yè)務(wù)咨詢與商務(wù)合作通道正式開啟!
開源鴻蒙(金華)應(yīng)用創(chuàng)新示范中心”在浦江揭牌,浦江打造開源鴻蒙生態(tài)城市新標(biāo)桿!
共譜開源華章 | 匠芯創(chuàng)榮獲“開源生態(tài)戰(zhàn)略合作伙伴”獎(jiǎng)
地方開源生態(tài)建設(shè)分論壇成功舉辦
潤和軟件亮相2025開放原子開源生態(tài)大會(huì)
九聯(lián)科技亮相2025開放原子開源生態(tài)大會(huì)
開源鴻蒙出席地方開源生態(tài)建設(shè)圓桌交流會(huì)
openKylin開源生態(tài)論壇順利召開
中軟國際亮相2025開放原子開源生態(tài)大會(huì)
榮膺“開源先鋒企業(yè)”!拓維信息攜開鴻智谷持續(xù)助力開源鴻蒙生態(tài)繁榮

蘋果Swift開源生態(tài)又添新成員
評論