正文内容 评论(0

七牛云姜智:Go+ 演进之路
2020-11-30 15:48:50  作者:cici 编辑:cici     评论(0)点击可以复制本篇文章的标题和链接

如果说在云计算的时代里,没有人可以错过 Go 语言;那么在 Go 语言的领域里,没有人可以错过 Gopher China Con。近日,Gopher China 2020 大会在上海盛大开幕!七牛云作为中国 Go 语言第一个吃螃蟹的企业,CEO 许式伟是国内 Go 语言大中华区首席布道师,他在今年面向全球发布了为数据而生的 Go+ 。

本次大会现场,七牛云技术经理姜智受邀分享了《Go+ 演进之路》的主题演讲。姜智从 Go+ 是如何火起来的、许式伟对 Go+ 的思考以及为什么做 Go+、为什么 Go+ 靶心是数据科学、Go+ 发布后目前已经具备了哪些特性、Go+ 的运行机制和逻辑等方面深度解析了 Go+ 的演进之路。

[MD:Title]
七牛云技术经理姜智

Go+ 发展历程

2020 年 7 月 5 日,七牛云 CEO 许式伟面向全球发布了为数据而生的开发语言 Go+ 。 Go+ 的诞生,在 Hacker News 上引发热议,在 Twitter 上形成了一道壮丽的风景线,占据了 Github Go 趋势榜双榜冠军。

[MD:Title]

关于为什么是 Go+,为什么技术开发者纷纷关注 Go+,Python 与 Go+ 的区别等问题,主要有下面几方面的背景和原因:

1、数据科学的发展和变化,未来的数据科学将具备全领域、大数据、无处不在等特征。

2、DT 时代的到来。数字化信息(数据)极大化地产生,促使我们进入了 DT 时代,数据地位发生变化,由副产品上升为原材料(石油),无处不在,深植于业务流。Data Science 的地位变化,Data Science 将基础设施化,数学软件 (Application) 向基础设施 (Infrastructure)演进

3、Data Science 本质上是算力革命,是计算密集型的业务。Python 不会是 Data Science 的终局。Python 有很多强大的地方,非常灵活,但灵活性却导致 Python 有其局限。相比之下,Go 语言语法简洁。Python 是脚本语言,无法承担算力密集型。所以,Python 成不了基础设施(Infrastructure)。

未来的数据科学,必然是数学软件和通用语言的结合,所以 Go+ 来了!

Go+ 特性与实现解析

这一部分,姜智在现场详细为大家介绍了 Go+ 当前所处的阶段,支持了哪些语言特性、具备的功能,同时 Go+ 是如何去实现这些特性的。

Go+ 的主要特性:

1、 Go+ 针对数据科学设计了简洁而易用的语法,比如 Go+ 对 List 和 Map 简洁实现,以及利用 List 和 Map 进行计算时的简洁语法。

2、Go+ 保持对 Go 兼容:Go+ 目前支持了大部分 Go 语言的特性(比如流程控制、goroutine、channel、defer等);Go+ 可以 import 所有 Go 的包;所有 Go+ 的包都能被转换成 Go 的包。

3、Go+ 独有的双擎:bytecode backend 和生成 Go 源码运行。

4、Go+ 实现了自己的 playground、REPL、vscode 插件等。

基于一个简单的示例,姜智在现场演示了 Go+ 的运行机制,包括:

1、利用 Go+ 的词法分析,将 Go+ 源码生成 Go+ 的 token 序列。

2、利用 Go+ 的语法分析,将 token 序列生成 Go+ 的抽象语法树(AST)。

3、Go+ 是如何基于双擎设计,将 Go+ 语法树转换成 bytecode 并运行,或者生成 Go 源码。

Go+ 下一步会是什么?

语言的选择标准必须包括:语法清晰简练和语法稳定容易学习。也希望语言的使用者是比较有探索精神的一个群体。Go+ 及其基于 Go 社区的用户群体刚好符合这些条件。

当前 Go+ 的主要精力还是做它语法的一些实现,以及支持 Go 的特性。在维持 Go 的语法简洁性的本色之上,合理准入简化语法,是 Go+ 项目的核心战术工作。未来,七牛云希望借助更多开源的力量,用“坐十年冷板凳”的态度去探索及维护 Go+,以 Go+ 的力量助力数据科学。

【本文结束】如需转载请务必注明出处:快科技

责任编辑:菲尔文章纠错

  • 支持打赏
  • 支持0

  • 反对

  • 打赏

文章价值打分

当前文章打分0 分,共有0人打分
  • 分享好友:
  • |
本文收录在
#快讯

  • 热门文章
  • 换一波

  • 好物推荐
  • 换一波

  • 关注我们

  • 微博

    微博:快科技官方

    快科技官方微博
  • 今日头条

    今日头条:快科技

    带来硬件软件、手机数码最快资讯!
  • 抖音

    抖音:kkjcn

    科技快讯、手机开箱、产品体验、应用推荐...