Carbon 是 Google 內部構建的最新編程語言,今天作為 C++ 的實驗性繼任者亮相。多年來,谷歌創造了一些編程語言,其中一些變得比其他更流行和突出。例如,Golang(或簡稱 Go)是為了改進服務器和分佈式系統的開發而創建的,並已被公眾採用。與此同時,Dart 編程語言,最初旨在作為 JavaScript 的替代品,直到 Flutter 發布才成為主流。
今天,在多倫多舉行的 Cpp North 大會上,作為 分享 由 Conor Hoekstra 出席並記錄幻燈片後,Google 員工 Chandler Carruth 分享了一種名為 Carbon 的新編程語言的願景。為了設置場景,Carruth 展示了當今最流行的編程語言中有多少有後繼者,這些後繼者可以讓開發人員快速提高工作效率並利用現代語言設計。
Android 開發人員都知道 Kotlin 作為後繼者對 Java 而言,正如 iOS 開發人員知道 Swift 是 Objective-C 的繼承者一樣。來自 Microsoft 的 TypeScript 徹底增強了 JavaScript,同時保持舒適的使用並能夠“轉譯”回 JavaScript。 C++ 在 Google 中得到了大量使用,它類似地是原始 C 編程語言的繼承者。
雖然有些人可能會建議 Rust,最初是一個 Mozilla 項目,後來發展為擁有重要的公眾追隨者,是 C++ 的繼承者,Carruth 想知道這個類比是否仍然存在。雖然不可否認,Rust 是一種很好的啟動新項目的語言,但它不像 Java 和 Kotlin 那樣具有“雙向互操作性”,因此很難穩定地遷移。
如果 Rust 今天適合你,你應該使用它。但是將 C++ 生態系統遷移到 Rust 是很困難的。
為此,雖然 Carbon 與 Rust 有許多相同的目標,例如幫助開發人員創建“性能關鍵軟件”,但 Carbon還旨在與現有的 C++ 代碼完全互操作。此外,如果需要,目標是盡可能輕鬆地從 C++ 遷移到 Carbon。
至於為什麼 C++ 開發人員可能要考慮將 Carbon 引入他們的代碼庫,Carruth 分享了很多亮點舞台上的語言。
介紹者關鍵字和簡單語法函數輸入參數是只讀值指針提供間接訪問和變異使用表達式命名類型包是根命名空間通過包名導入 API 顯式對象參數聲明方法單一繼承;默認情況下,類是最終的強大的、經過定義檢查的泛型類型顯式實現接口
除了語言本身的特性之外,Carbon 團隊還關注將塑造 Carbon 未來的開發過程。該項目的代碼在 GitHub 上公開託管,並且對拉取請求開放,而 Carbon 的文化是 概述 便於公司員工和個人訪問和包容,類似的。
也就是說,Carbon 編程語言的一個方面沒有特別清楚地概述是谷歌的參與。雖然今天的演示是由一位 Google 員工分享的,並且 Carbon 目前的項目負責人主要(但不完全)由 Google 員工組成,但沒有提到 Carbon 是一個 Google 項目。
這實際上是故意的,因為雖然 Carbon 是在 Google 內部起步的,但該團隊了解並在網上分享以使其在未來取得成功, Carbon 需要成為“一個獨立的、社區驅動的項目”,而不是僅僅由谷歌自己的用途驅動。在同一評論中,Carruth 進一步強調 Carbon 目前只是一項實驗,儘管一些公司已經很早就表現出興趣。
如果您有興趣開始使用 Carbon,您可以下載源代碼並在您自己的設備上進行試驗。或者,由於與免費的 Compiler Explorer 網絡應用程序集成,您可以直接在瀏覽器中體驗 Carbon 編程語言。