为什么现在不能用go语言 那些Go语言实现的语言现在发展怎么样了
为什么现在不能用go语言 那些Go语言实现的语言现在发展怎么样了
2024-11-21 11:14:29  作者:習遦悻靜喑  网址:https://m.xinb2b.cn/know/wzl156421.html

大家好,我是站长 polarisxu。

Go 是一门通用编程语言,Go1.5 实现了自举,也就是说,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 代码:

packagemainfuncmain(){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 日发布)。

代码示例:

fmt:=import("fmt")each:=func(seq,fn){forxinseq{fn(x)}}sum:=func(init,seq){each(seq,func(x){init =x})returninit}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 程序:

packagemainfuncmain(){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=0server.get("/")do|req,res|puts(i)i=i 1res.body=req.method "HelloWorld"res.status=200endserver.get("/not_found")do|req,res|res.body="NotFound"res.status=404endserver.start

不知道 Ruby 爱好者喜欢不?!

05 总结

除了上面介绍的,还有其他一些 Go 语言实现的语言,比如 chai2010 的wa 语言[1],以及其他一些脚本语言,如 Lua 虚拟机 Go 实现、JS 虚拟机实现、Python 解释器等。


有兴趣的可以通过 https://github.com/d5/tengo 项目的性能测试部分了解。

以上介绍的语言,你有看好的吗?会尝试哪个语言吗?如果你对编程语言实现感兴趣,可以参与其中。

参考资料

[1]

wa 语言: https://github.com/wa-lang/wa


  • 杜蕾斯文案经典6.18(看着刚过不久的感恩节)
  • 2024-11-22看着刚过不久的感恩节前几年,杜蕾斯在微博里发起的“商业互吹”今天来盘点一下首先按照时间顺序,杜蕾斯首先致敬了绿箭口香糖杜蕾斯:感谢你的掩护——绿箭:你我清新开始因为现实中有很多男生在超市购物的时候看见旁边的绿箭的同时就会。
  • 自由光横向对比的车辆(自由光带你体验驾驶的极致感受)
  • 2024-11-22自由光带你体验驾驶的极致感受自由光,一个融入自然的名字,传递出一种洒脱与自由的气息然而,要想真正体验驾驶的极致感受,这辆SUV绝不仅仅是表面上的魅力在一个阳光明媚的周末,驾驶自由光踏上旅程,你会发现驾驶的乐趣其实就藏在每一次的加。
  • rtx显卡几年更新一代(买RTX显卡只为光追吗)
  • 2024-11-22买RTX显卡只为光追吗在显卡的选购方面,RTX20系列已经是当今玩家的首选了,而RTX显卡与上一代的GTX显卡都有哪些区别呢?RTX显卡只有光追这一功能才与我们的使用息息相关吗?下面就跟大家来探讨一下,看看有哪些功能是你不。
  • 全职猎人最强前十人介绍(愿病魔早日战胜富奸)
  • 2024-11-22愿病魔早日战胜富奸写在前头民那桑好久不见,上一篇写的《大护法》的影评由于政治敏感没过审,真想去国外啊最近少女喵看的是《全职猎人》这部动漫,用大概1个月的时间把重制版的148话都看了,大概的感受是:【果然富坚义博能拖更这。
  • 如何延长airpodspro保质期 AirPods如何延长电池寿命
  • 2024-11-22如何延长airpodspro保质期 AirPods如何延长电池寿命相比起手机大家对AirPods的电池寿命就显得不那么在意,其实AirPods的电池寿命大约在两年多左右,那么要如何延长其电池寿命呢?下面就来分享几个技巧给大家1.AirPods没用时放入充电盒内要养成。
  • 李明启回忆扎针紫薇(皇后容嬷嬷同框)
  • 2024-11-22皇后容嬷嬷同框邓萃雯与李明启新浪娱乐讯1月8日,邓萃雯在微博晒出与老戏骨李明启同框的照片,并发文大夸李明启老师可爱,她写道:“同久仰大名的‘容嬷嬷’李明启老师终于同框,新版皇后今天跟她见面聊天才知道,原来‘容嬷嬷’。
  • 70后十大演技派姚晨简介(近40的他曾是爆红童星)
  • 2024-11-22近40的他曾是爆红童星头号电影院懂小姐(topcinema原创,严禁转载)当观众还沉浸在刚刚完结的《破冰行动》紧张刺激的剧情中时,看到接棒播出的《无名卫士》不禁让人有点眼花:怎么,这部戏里又有“马云波”啊根据真实案例改编的。
  • 描写晚霞的句子(描写晚霞的句子推荐)
  • 2024-11-22描写晚霞的句子推荐啊!晚霞,多么奇丽,它一会儿像一匹骏马在奔驰,一会儿像一头雄狮在怒吼,一会儿像朵朵鲜花绽开……我看着看着,身体感到轻飘飘的,仿佛自己也成了一片晚霞一会儿,一道霞光射来,晚霞闪耀着绚丽的光彩,我把眼睛微。
  • yg旗下艺人合照(锦鲤女星私照曝光)
  • 2024-11-22锦鲤女星私照曝光王一博一直在拉拢的京圈大佬,早前被朱一龙抢走了,大佬还给朱一龙推了一部电影,王一博团队特别不服,最近花钱买了很多水军黑朱一龙,朱一龙这段时间但凡出来营业,评论区底下就会有一批人嘲他长得老,颜值过几年就。
  • 郑州补换领驾驶证(郑州补换领驾驶证实现自助服务)
  • 2024-11-22郑州补换领驾驶证实现自助服务市民代先生了解自助补换领驾驶证智能终端功能映象网讯(记者王韶卿通讯员邢红军)一提到去车管所办理业务,大家脑子里就出现人挤人的画面8月10日,郑州市民代先生来到郑州市公安局交警支队车辆管理所,在一楼业务。
  • 蔡赟和傅海峰比赛(到底还是太年轻)
  • 2024-11-22到底还是太年轻半决赛艰难淘汰男双劲敌郑在成/李龙大之后,决赛更是碰到由两位后场重炮手搭档的组合——高成炫/柳延星首局18-20,风云仍镇定自若24-22!,。
  • 纯灰色裤子(这优雅的灰色裤子)
  • 2024-11-22这优雅的灰色裤子灰色裤子是所有基本颜色中最通用的,可以搭配任何颜色的单品搭配扣人心弦的着装规格的灰色休闲裤,能驾驭多种场合,而休闲穿搭的灰色长裤也能打造出时尚单调、渐变色、同色系的造型这一次,我们将重点介绍这种“灰色。