为什么现在不能用go语言 那些Go语言实现的语言现在发展怎么样了
为什么现在不能用go语言 那些Go语言实现的语言现在发展怎么样了
2024-09-27 10:15:17  作者:習遦悻靜喑  网址:https://m.xinb2b.cn/sport/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


  • 粉尘爆炸有几个要点(粉尘爆炸你了解多少)
  • 2024-09-27粉尘爆炸你了解多少生活中常见的淀粉、小麦粉、木粉等,都是可燃粉尘粉尘也会爆炸?6月27日,在台湾新北市八仙乐园彩虹派对中,彩色粉尘爆炸截至29日下午,造成近500人受伤看到这条新闻,许多人第一次意识到这些彩色粉末的可怕。
  • stone怎么读音(stone如何读音)
  • 2024-09-27stone如何读音stone读音:英[stəʊn]\美[stoʊn]n.石;石头;石料;岩石;(加工成某形状为某用途的)石块;果核;结石;英石;vt.向…扔石块;用石头砸;去掉…的果核;adj.石制的;adv.石一般的。
  • 孙红雷阿浩叫什么电影(孙红雷阿浩是什么电影)
  • 2024-09-27孙红雷阿浩是什么电影剧名:《落地,请开手机》王浩-孙红雷饰亦正亦邪真王浩是一个社会混混、泄露国家能源机密王奇的弟弟假王浩是被与其外貌特征一模一样的国家安全局侦查员沈亢(也由孙红雷饰)伪装代替、执行反特任务的卧底王浩,因为。
  • 陆战队冬训(疫无反顾冲锋在前)
  • 2024-09-27疫无反顾冲锋在前引翔港小区建成于上世纪八十年代,是一个典型的老旧小区这里有一支由下沉干部、居委干部、志愿者们组成的工作团队,他们白天工作不间断,晚上手机不关机,每天长时间奔波……被居民亲切地称为“超能陆战队”下沉干部。
  • 李咏爱情观(李咏致我的情敌)
  • 2024-09-27李咏致我的情敌精神世界里,纵使物质不富裕,幸福感也是最高的“极简青年”极简导读:极赋涵养,才华横溢的父亲和母亲,分别对女儿深情细腻的爱和李咏刘瑜这样的父母亲对照再想到跟某些长辈对话的困难......文字较长耐心体悟。
  • 一万多的国产埃尔法(董明珠狂砸30亿造出)
  • 2024-09-27董明珠狂砸30亿造出随着社会的发展现在买车是一件很正常的事情,但是因为国产车还没有发展起来,所以更多人喜欢的还是合资车但是合资车好是好,就是有一个致命的缺点,那就是贵,所以大家都将目光放在了国产车上面,期待能够出一款物美。
  • 当归栽培技术大全(当归种植与病虫害防治技术)
  • 2024-09-27当归种植与病虫害防治技术当归种植与病虫害防治技术探究当归是一种常见中药材,以根入药,具有补血活血、调经止痛、跌打损伤、提高免疫力、润肠通便等功效目前中药的需求量越来越大,当归的种植面积也越来越广,在甘肃东南部、四川、云南、湖。
  • 爽口滑腻的黄焖鸡含米饭(常见的除了黄焖鸡之外的六种黄焖美食)
  • 2024-09-27常见的除了黄焖鸡之外的六种黄焖美食黄焖鸡是大街小巷常见的美食,上学和上班族的最爱,但是其实除了黄焖鸡之外,还有的其他黄焖美食也很好吃的黄焖排骨黄焖的做法其实是差不多的,但是食材不一样,最后出来的味道还是有区别的,黄焖小排,煮的有点软的。
  • 写给女人婚恋的忠告(我跟上千个女人聊过婚姻)
  • 2024-09-27我跟上千个女人聊过婚姻出自:中国经济网新媒体先生:很多男人好奇,我们女人平时凑一起都在聊什么其实也没什么,经常是“我老公真棒”这种话题比如A的老公上次做饭是11年前,B的老公记不清孩子上几年级,C坐月子时老公通宵打游戏,D。
  • 汽车贴膜后下雨了有影响吗(汽车贴膜后注意事项)
  • 2024-09-27汽车贴膜后注意事项在炎热的夏天里,强烈的紫外线对汽车的车身有很大的损害,因此很多人选择为汽车贴膜,但很多人贴完膜后很快就开创,而这样也会损伤钢铁好的车膜,那么,汽车贴膜后多久可以开窗呢?下面就一起来看一看吧汽车贴膜后多。