为什么现在不能用go语言 那些Go语言实现的语言现在发展怎么样了
为什么现在不能用go语言 那些Go语言实现的语言现在发展怎么样了
2024-11-22 04:51:04  作者:習遦悻靜喑  网址:https://m.xinb2b.cn/life/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-11-22大基数减肥是所有减肥中最简单的 大基数胖友们该怎么减肥首先要先判断,自己是大基数还是小基数?这就需要看体重指数BMI,其具体的计算方法是体重除以身高的平方,其中体重以千克为单位,身高以米为单位也就是,BMI=体重(公斤)÷身高的平方(米)若BMI值<。
  • 为什么吃稀饭会反酸烧心(反酸烧心吃馒头)
  • 2024-11-22反酸烧心吃馒头很多人都存在“烧心”的问题,看这个词语的字面意思好像和心脏有关系,但其实并非如此“烧心”这件事情主要是胃部出现了一些问题,还请您科学看待具体而言,烧心是什么问题?烧心,其实就是指胃酸逆反流进了食管当中。
  • 亚马逊全新游戏新世界(亚马逊签约独立工作室)
  • 2024-11-22亚马逊签约独立工作室亚马逊游戏已与独立工作室DisruptiveGames签订了发行协议,该工作室曾协助开发了《托尼霍克职业滑板12》、《神陨》和《暗黑破坏神2:重制版》目前,新的多人动作冒险正在筹备开发中谈到此次合作,。
  • 薄荷的养殖方法和注意事项(薄荷怎么养)
  • 2024-11-22薄荷怎么养光照充足薄荷是长日照作物,如果光照不足,不仅影响它的发育,还会降低薄荷脑、薄荷油的含量一般要把它放到向阳的地方,每天要保证尽可能长的光照时间,这样有利于花芽的分化,也能更好的进行光合作用需要注意的是,。
  • 大宅门白七爷的性格(大宅门三部暗线相互褡裢)
  • 2024-11-22大宅门三部暗线相互褡裢大宅门是导演郭宝昌的力作,一经推出好评如潮陈宝国和斯琴高娃凭借这部电视剧,再造经典大宅门第一部讲述的是清末著名药铺百草厅的兴衰这也是白家七爷白景琦辉煌的前半生这段日子,白七爷荒唐过,胡闹过,不过在国家。
  • 年报中资产总额填什么(年报里的资产总额应该这样算)
  • 2024-11-22年报里的资产总额应该这样算在我们的会计实操交流群里,很多会计小伙伴在问:这所得税年报基础信息表里的资产总额,怎么填呀?是不是就是填12月资产负债表左下角的资产合计呢?并不是这样的哈,这个资产总额计算起来,真没这么简单!根据税局。
  • 南美4国游记博客(二十年游历分享之270)
  • 2024-11-22二十年游历分享之270我是今日头条的赵先生,在头条持续更新我的游记《二十年游历分享》,介绍世界上主要景点本篇文章共有14张照片(没有特殊声明的照片都是赵先生自己拍摄的),0个音频,0个视频赵先生写文章的目的很简单,纯粹为了。
  • 保花保蕾方法(保花保蕾的方法有什么)
  • 2024-11-22保花保蕾的方法有什么我们使用3g磷酸二氢钾粉末,之后兑上1000g的清水,使用干净的筷子将其搅拌均匀,里面没有明显的沉淀物时才可以用作浇花使用磷酸二氢钾溶液浇花要选对时机,不是任何时候都可以使用磷酸二氢钾溶液养花的所以下。
  • 生活即教育是谁说的(生活即教育具体是谁说的)
  • 2024-11-22生活即教育具体是谁说的生活即教育是“杜威”说的杜威一般是指约翰·杜威(JohnDewey),美国著名哲学家、教育家、心理学家,实用主义的集大成者,也是机能主义心理学和现代教育学的创始人之一杜威的思想曾对二十世纪前期的中国教。