精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Swift 2023:強調并發、泛型和C++互操作性,開發Swift解析器

OSC開源社區 ? 來源:OSC開源社區 ? 作者:OSC開源社區 ? 2022-11-25 15:53 ? 次閱讀

Apple Swift 團隊的一名工程師兼語言工作組成員 John McCall 在最新發布的一篇博客中介紹了 Swift 的 2023 年度計劃。 “Swift 項目中有很多激動人心的工作正在進行,而且很難跟蹤所有這些工作,因為它發生在許多不同的存儲庫、拉取請求和論壇線程中。為了讓社區更好地了解全局,核心團隊調查了整個項目的工作組和開發人員,并收集了有關他們明年關注的內容的信息。”

3806d89a-6bf8-11ed-8abf-dac502259ad0.png

社區組織方面,Swift核心團隊最近開始重組,以便由專門的工作組承擔更多責任:

語言工作組—— 發展語言和標準庫

網站工作組—— 管理swift.org網頁內容

文檔工作組—— 組織文檔工具和庫的開發

C++ 互操作性工作組—— 孵化語言提案以提高與 C++ 的互操作性

根據介紹,這些新的工作組加入了長期存在的 Swift on Server 和 Diversity 工作組,使感興趣的用戶可以更有針對性的加入專門的工作組來做出貢獻。核心團隊正在研究創建更多的工作組,包括一個致力于提高 Swift 跨平臺可用性的工作組。 核心團隊的成員也有所更新,Mishal Shah將加入核心團隊。“作為支持 Swift 項目的許多底層基礎架構的領導者和倡導者,一段時間以來,Mishal 在支持 Swift 項目的發展方面發揮了重要作用。” 語言發展方面,語言工作組專注于在五個主要語言領域取得進展:

并發。完成對Sendable和actors提供的嚴格數據隔離的語言支持。計劃包括關閉許多已知的線程安全漏洞,例如圍繞全局變量和某些 cross-actor 調用的漏洞。它還包括配備一些功能來解決因strict isolation而產生的可用性問題,例如允許 non-Sendable 在受限情況下在隔離域之間移動。

泛型。語言工作組打算致力于可變參數泛型語言特性工作。這是一項預計需要多年才能完成的主要功能,最初側重于設計核心語言模型并實現編譯器和運行時基礎架構以支持它。一個早期的里程碑將是允許元組類型在其元素符合 Equatable 等協議時有條件地符合協議。

所有權。

開發功能讓程序員明確控制內存中值的所有權。

添加對 non-copyable 類型的基本支持。這將提供通過限制關鍵值的生命周期來實現高性能的新方法。這些控件將啟用處理內存中數據的新方法,將當前 “不安全” 構造的性能與 Swift 標準庫功能的安全性相結合。

宏。著眼于進一步支持創建豐富的庫和 DSL。這項工作將從創建vision document開始,為宏能夠在 Swift 中實現什么以及它們如何融入語言進行設計。

C++ 互操作性。

編寫文檔,闡述如何使 C++ API 在 Swift 中可用,反之亦然。

穩定當前在 Swift 中使用 C++ 的原型互操作性功能,包括 owned value types、trivial value types、API 模式(例如外部引用類型和迭代器),以及一些關于方法、指針、l-value 和 r-value 引用的一些基本問題。

穩定當前用于從 C++ 使用 Swift 的原型互操作性功能,包括 Swift 值類型、引用類型和函數 exposed 給 C++ 的方式。

此外,語言工作組還正計劃為即將到來的 Swift 6 語言模式完成預期的語言修訂。Swift 定期引入新的語言模式,以便語言可以在不破壞現有代碼的源兼容性的情況下取得進步。以及編譯器開發團隊正在努力改進編譯器與構建系統和自身其他調用的交互方式。 對于 Package Registry,Swift 包管理器的開發重點是與社區一起開始開源 package registry server 實現的工作。目標是創建將 Swift 包生態系統從基于源代碼控制的生態系統過渡到基于注冊表的系統所需的技術組件,從而增強生態系統的安全性和可靠性。其計劃將與 Swift Package Index 等社區運行的項目合作。 2023 年針對 Swift 的其他努力還包括:

開發一個 Swift 解析器,它是用純 Swift 編寫的,并且具有當前 C++ 實現的功能。這開辟了工具開發的新方向,最終將取代 C++ 解析器。

通過將類型推理實現遷移到支持 multi-statement closure 推理的更具可擴展性的基礎架構,提高結果 result builders 的類型檢查性能。

通過與類型檢查器更緊密地集成,提高 code completion 和 lookup-dependent 工具(例如快速幫助和跳轉到定義)的可靠性,尤其是在不完整或不明確的代碼中。

在某些情況下,通過消除對轉換 thunk 的需要,在轉換函數時生成更少的代碼,尤其是在將 closures 傳遞給通用函數和導入函數時。

通過解釋 type layout 的 compact encoding 而不是發出 specialized functions,在 copying 和 destroying 復雜的結構和枚舉時生成更少的代碼。

添加 SIL 優化器支持新語言功能和與 object lifetimes 和 copies 相關的可預測優化。團隊正在設計一套新的 low-level SIL 實用程序,以在整個現有優化管道中保持所有權不變性。這將導致可靠的診斷和可預測的性能。

在 Swift 中重寫當前的過程間 side-effect 和 escape analyses,替換當前的 C++ 實現。新的實現提供了更準確的結果并且明顯更簡單。

審核編輯 :李倩

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 函數
    +關注

    關注

    3

    文章

    4306

    瀏覽量

    62431
  • C++
    C++
    +關注

    關注

    22

    文章

    2104

    瀏覽量

    73496
  • 生態系統
    +關注

    關注

    0

    文章

    701

    瀏覽量

    20709

原文標題:Swift 2023:強調并發、泛型和C++互操作性,開發Swift解析器

文章出處:【微信號:OSC開源社區,微信公眾號:OSC開源社區】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    TPS543C20A SWIFT?降壓轉換評估模塊用戶指南

    電子發燒友網站提供《TPS543C20A SWIFT?降壓轉換評估模塊用戶指南.pdf》資料免費下載
    發表于 11-24 15:34 ?0次下載
    TPS543<b class='flag-5'>C</b>20A <b class='flag-5'>SWIFT</b>?降壓轉換<b class='flag-5'>器</b>評估模塊用戶指南

    TPS542A52 SWIFT?降壓轉換評估模塊用戶指南

    電子發燒友網站提供《TPS542A52 SWIFT?降壓轉換評估模塊用戶指南.pdf》資料免費下載
    發表于 11-24 13:59 ?0次下載
    TPS542A52 <b class='flag-5'>SWIFT</b>?降壓轉換<b class='flag-5'>器</b>評估模塊用戶指南

    TPS546C20A兩相SWIFT?降壓轉換評估模塊用戶指南

    電子發燒友網站提供《TPS546C20A兩相SWIFT?降壓轉換評估模塊用戶指南.pdf》資料免費下載
    發表于 11-21 14:15 ?0次下載
    TPS546<b class='flag-5'>C</b>20A兩相<b class='flag-5'>SWIFT</b>?降壓轉換<b class='flag-5'>器</b>評估模塊用戶指南

    TPS546C23兩相SWIFT降壓轉換評估模塊用戶指南

    電子發燒友網站提供《TPS546C23兩相SWIFT降壓轉換評估模塊用戶指南.pdf》資料免費下載
    發表于 11-21 14:07 ?0次下載
    TPS546<b class='flag-5'>C</b>23兩相<b class='flag-5'>SWIFT</b>降壓轉換<b class='flag-5'>器</b>評估模塊用戶指南

    TPS56C215 SWIFT?降壓轉換評估模塊用戶指南

    電子發燒友網站提供《TPS56C215 SWIFT?降壓轉換評估模塊用戶指南.pdf》資料免費下載
    發表于 11-15 13:59 ?0次下載
    TPS56<b class='flag-5'>C</b>215 <b class='flag-5'>SWIFT</b>?降壓轉換<b class='flag-5'>器</b>評估模塊用戶指南

    TPS54824 SWIFT?降壓轉換評估模塊用戶指南

    電子發燒友網站提供《開源硬件-TPS54824 SWIFT? 降壓轉換評估模塊用戶指南 (Rev. B).pdf》資料免費下載
    發表于 11-15 13:53 ?0次下載
    TPS54824 <b class='flag-5'>SWIFT</b>?降壓轉換<b class='flag-5'>器</b>評估模塊用戶指南

    TPS543620 SWIFT?降壓轉換評估模塊用戶指南

    電子發燒友網站提供《TPS543620 SWIFT?降壓轉換評估模塊用戶指南.pdf》資料免費下載
    發表于 11-15 13:52 ?0次下載
    TPS543620 <b class='flag-5'>SWIFT</b>?降壓轉換<b class='flag-5'>器</b>評估模塊用戶指南

    TPS543C20 SWIFT?降壓轉換評估模塊用戶指南

    電子發燒友網站提供《TPS543C20 SWIFT?降壓轉換評估模塊用戶指南.pdf》資料免費下載
    發表于 11-11 09:11 ?0次下載
    TPS543<b class='flag-5'>C</b>20 <b class='flag-5'>SWIFT</b>?降壓轉換<b class='flag-5'>器</b>評估模塊用戶指南

    TPS543C20兩相SWIFT?降壓轉換評估模塊用戶指南

    電子發燒友網站提供《TPS543C20兩相SWIFT?降壓轉換評估模塊用戶指南.pdf》資料免費下載
    發表于 11-11 09:10 ?0次下載
    TPS543<b class='flag-5'>C</b>20兩相<b class='flag-5'>SWIFT</b>?降壓轉換<b class='flag-5'>器</b>評估模塊用戶指南

    使用帶陶瓷電容器的低電壓SWIFT DC/DC轉換

    電子發燒友網站提供《使用帶陶瓷電容器的低電壓SWIFT DC/DC轉換.pdf》資料免費下載
    發表于 10-12 09:44 ?0次下載
    使用帶陶瓷電容器的低電壓<b class='flag-5'>SWIFT</b> DC/DC轉換<b class='flag-5'>器</b>

    M-LVDS和總線LVDS的操作性

    電子發燒友網站提供《M-LVDS和總線LVDS的操作性.pdf》資料免費下載
    發表于 09-29 09:46 ?0次下載
    M-LVDS和總線LVDS的<b class='flag-5'>互</b><b class='flag-5'>操作性</b>

    Swift 6.0引領編程語言新趨勢

    近日,蘋果公司公布了一系列重磅消息:推出iOS/iPadOS 18和macOS 15 Sequoia等操作系統更新,以及Swift編程語言的全新版本——Swift 6.0。此番升級重點關注編程安全
    的頭像 發表于 09-20 15:57 ?291次閱讀

    操作性對智能家居的重要

    在智能家居領域,操作性對不同群體有不同的意義。消費者希望有多種選擇、較高的靈活性、簡單的設置以及安全感,確保設備不會被黑客攻擊。最重要的是,他們希望設備能夠“正常工作”。
    的頭像 發表于 08-26 17:29 ?4.1w次閱讀
    <b class='flag-5'>互</b><b class='flag-5'>操作性</b>對智能家居的重要<b class='flag-5'>性</b>

    蘋果推出全新開源Swift軟件包

    七月三十一日,蘋果企業總部對外正式發表公告,宣布昨日(即七月二十九日)成功推出全新的開源 Swift 軟件包—— (喚名為 swift-homomorphic-encryption)。此舉旨在為 Swift 編程語言帶來應用便利
    的頭像 發表于 07-31 15:17 ?346次閱讀

    “踩坑”經驗分享:Swift語言落地實踐

    Swift認為字符串是由一個個字形群集 (grapheme clusters)組成的,字形群集的大小不固定所以不能用整數去索引 (字形群集其實就是Swift中的Character(字符)類)。
    的頭像 發表于 12-28 17:37 ?802次閱讀