您好,登錄后才能下訂單哦!
這篇文章主要講解了“Go語言實現的語言有哪些”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Go語言實現的語言有哪些”吧!
01 Go+
這是國內七牛老大許式偉主導的,對 Go 語言的擴展,專為數據科學領域打造。目標是取代 Python 在數據科學領域的位置。
項目地址:https://github.com/goplus/gop,Star 數:4.2k+。
該語言的前身是 qlang,2020 年 6 月份左右將其重命名為 Go+,并定位為數據科學領域。截止目前最新版本是 2021 年 1 月 8 日發布的 0.7.17,還不是穩定版本。
這是一門靜態編程語言,完全兼容 Go 語言,類似腳本語言的風格,比 Go 更具可讀性的數據科學代碼。
例如下面的 Go 代碼:
package main func main() { a := []float64{1, 2, 3.4} println(a) }
對應的 Go+ 代碼如下:
a := [1, 2, 3.4] println(a)
今天剛看到許大在尋找 Go+ 語言開發團隊的負責人,有興趣的可以聯系許大(找我轉達也沒問題)。
目前看,距離目標還有很長的路要走,最少先推出穩定版本,然后有一個線上實際的應用。
02 Tengo
Tengo 是一種小型、動態、快速、安全的腳本語言,它使用 Go 語言實現,并且可以嵌入 Go 程序中。它的語法和 Go 語言類似。
項目地址:https://github.com/d5/tengo,Star 數:2.2k+,目前最新版本是 2.6.2(2020 年 9 月 18 日發布)。
代碼示例:
/* The Tengo Language */ fmt := import("fmt") each := func(seq, fn) { for x in seq { fn(x) } } sum := func(init, seq) { each(seq, func(x) { init += x }) return init } fmt.println(sum(0, [1, 2, 3])) // "6" fmt.println(sum("", [1, 2, 3])) // "123"
03 CX
CX 是一種用于區塊鏈的新編程語言,使用 Go 語言實現,語法類似 Go 語言。
項目地址:https://github.com/skycoin/cx,Star 數 27,很凄慘。目前最新 tag 是 0.7.5,我查了下,該項目幾年前就存在了。目前看屬于半死不活的狀態,是 skycoin 主導開發的。對區塊鏈不太熟悉,不知道這個語言能為區塊鏈開發帶來什么革命性的功能。
我安裝試用了下,寫了一個 Hello World 程序:
package main func main() { str.print("Hello, World!") }
哈哈哈,我又掌握了一門語言的 Hello World!
04 Goby
受 Ruby 啟發的面向對象的解釋型語言,核心代碼 100% 使用 Go 實現。它具有標準庫,可提供多種功能,例如插件系統。
項目地址:https://github.com/goby-lang/goby,Star 數 3.2k+,目前最新版本 0.1.13(2020 年 4 月 26 日發布)。
Goby 的預期是用于后端開發。它具備(但不限于)以下功能:
基于 Go goroutine 的 thread/channel 機制;
內置 database 庫;
json 支持;
插件系統,支持動態加載 Go 庫(目前不支持 Windows 系統);
可以直接訪問 Go 對象;
一個 Server 端 Hello World 的例子:
require "net/simple_server" server = Net::SimpleServer.new("3000") i = 0 server.get("/") do |req, res| puts(i) i = i+1 res.body = req.method + " Hello World" res.status = 200 end server.get("/not_found") do |req, res| res.body = "Not Found" res.status = 404 end server.start
不知道 Ruby 愛好者喜歡不?!
05 總結
除了上面介紹的,還有其他一些 Go 語言實現的語言,比如 chai2010 的 wa 語言[1],以及其他一些腳本語言,如 Lua 虛擬機 Go 實現、JS 虛擬機實現、Python 解釋器等。
感謝各位的閱讀,以上就是“Go語言實現的語言有哪些”的內容了,經過本文的學習后,相信大家對Go語言實現的語言有哪些這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。