我的雲端生活網 - Life+

Wednesday, November 11, 2009

準備要Go?讓我們Go

昨天11月10日,Google 發表了新語言 Go ,是簡單、快速、支援 Unicode 、多緒、垃圾回收機制、物件導向的語言寫法、和彈性並安全的資料型態的動態語言。相當像 C 語言。( http://golang.org/ , http://google-opensource.blogspot.com/2009/11/hey-ho-lets-go.html ) 支援 Linux 和 Mac ,不支援 Windows。

Concurrence 方面, Go 提出 Goroutine 一詞:一個 goroutine 是在同一記憶體位置上和其他 goroutine 同時執行的 Go 函數。Goroutine 不是像 coroutine 、 process 或 thread 的東西。一份程式由許多個 goroutines 組成。 Goroutine 是不會被 block 的單元。

語法方面很簡單,記憶體空間配合常值表達配置 (需要一個 byte 的整數就不會硬配四個 bytes ) ,陣列使用空間的代價很少,使用 Goroutine 代價也很少。此外,有特定的語法定義 channel ,方便寫通訊程式。在 channel 語法上定義同步或非同步傳輸。

參考資料

No comments:

Blog Archive