谷歌新一代開源操作系統 Fuchsia 的開發者網站上公布了一份 Fuchsia 編輯語言策略,文檔描述了 C、C++、Dart、Rust 與 Go 的優劣勢,並明確指定了其中哪些語言將會在 Fuchsia 開發生態中得到怎樣程度的支持。
該策略文檔描述了 Fuchsia 項目在 Fuchsia Platform Source Tree(Fuchsia 平台源碼樹)和供終端開發者在這之外構建 Fuchsia 開發目標設備軟體時使用和支持的編程語言。
Fuchsia Platform Source Tree 是 fuchsia.googlesource.com 上託管的 Fuchsia 源碼,終端開發者是指在 Fuchsia Platform Source Tree 之外為 Fuchsia 編寫軟體的人。與終端開發者相比,Fuchsia Platform Source Tree 可以匯聚對 Fuchsia 系統及其基礎技術更大的更改,因為可以執行僅影響 Fuchsia Platform Source Tree 的更改,而無需與其他人員進行協調。相反,影響終端開發者的更改需要更多的協調,並且需要更長的執行時間。
谷歌介紹,對終端開發者的支持意味著 Fuchsia SDK 需要包含可幫助他們為 Fuchsia 開發軟體的工具和庫,包括 FIDL(Fuchsia Interface definition language,Fuchsia 介面定義語言)特定語言後端與支持庫等。對非同步編程的強大支持則意味著可以使用直線型代碼,例如使用 Rust/Dart 等語言的 async/await 編寫非同步程序。
文檔接下來分別羅列了幾種編程語言,分析了它們的優缺點之後,得出如下結論:
C
C++
Dart
Rust
Go
總結一下,Go 在 Fuchsia 生態中可能會有些失落,值得注意的是文檔中關於其缺點的介紹:
值得關注的是,文檔中沒有涉及 Fuchsia 已經確認支持的 Python。不過關於 Python 的支持細節,支持語言頁面也沒有詳細內容,只有一欄欄 TODO,應該是還沒有做好準備。
而另一方面,此前關於支持 JavaScript 的傳言,看來也無法得證。
[admin
]