千家信息网

Go语言实现的语言有哪些

发表于:2024-11-20 作者:千家信息网编辑
千家信息网最后更新 2024年11月20日,这篇文章主要讲解了"Go语言实现的语言有哪些",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Go语言实现的语言有哪些"吧!01 Go+这是国内七牛老大许
千家信息网最后更新 2024年11月20日Go语言实现的语言有哪些

这篇文章主要讲解了"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语言实现的语言有哪些这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

语言 代码 版本 项目 地址 数据 科学 开发 功能 区块 日发布 系统 脚本 领域 学习 支持 主导 内容 动态 对象 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 图像处理软件开发者 河南森图网络技术有限公司 搬瓦工搭建服务器 唐山网络技术哪个好 派出所进校园宣讲网络安全知识 福建高防服务器 华为服务器安全网络安全 河池小程序软件开发 数据库过期是什么意思 宝山区一站式软件开发诚信为本 pi服务器维护一般需要多久 win7管理网络的服务器 文韬武略服务器什么时候开 数据库中怎么添加第二个默认约束 网络安全伴我行ppt下载 共和国网络安全法开始施行的时间 老是接到公安局提醒网络安全电话 软件开发如何做好接口 vpn服务器未响应 数据库的安全保护措施主要 天津服务器风扇供应商云空间 数据库是必修课吗 阿里云服务器ip登录 软件开发高端人才上班 软件开发项目pmbok 治理网络安全法规有哪些 万兴科技和工业互联网 可以用什么软件开发订单系统 无线传感器网络技术课后题 放射科诊断报告数据库
0