云时代编程语言 Ballerina 发布:轻松创建跨分布式端的弹性服务

2019年09月11日

适用于云时代的编程语言 Ballerina 近日发布了 1.0 版本。

Ballerina 是一种编程语言和平台,它的目标是让创建跨分布式端的弹性服务变得更轻松。Ballerina 使用分布式系统原语的编译时抽象,这为数据转换提供了类型安全性,编译器可以生成诸如用于将应用部署到 Docker 和 Kubernetes 的 API 网关等构件。

此外,Ballerina 还定义了一系列关键词来表示集成概念,比如网络端点、服务、流 SQL 以及 table、json 和 xml 原始类型等,IDE 等工具可以基于这些语法元素从任意的 Ballerina 代码生成时序图。

具体看一看官方的特性介绍:

  • 内建并发一流的语言结构,用于提供和使用服务

静态类型是网络应用开发者的开发难题,Ballerina 的静态类型结构类型系统旨在使网络数据模式友好,允许开发者编写符合健壮性原则的代码,即发送的内容要谨慎,可接受的内容要足够自由。

  • 基于时序图的图形视图显示了网络分布式应用语义的最基本面

时序图用于描述分布式和并发程序的工作方式,Ballerina 中,每个程序都是一个时序图,可以自动说明分布式和并发交互。

  • 允许分布式组件之间更松散的耦合,并消除数据绑定带来的不便
  • 可扩展的元数据可以轻松地将 Ballerina 程序与云平台集成

在云时代,运行程序不再仅仅是编译和执行的问题,而是编译、构建镜像、推送镜像、配置容器编排以及最终运行。Ballerina 将整个程序执行过程简化,并使用可扩展的元数据编译成适用于所有主要云平台的可运行程序。

  • 在语言中引入网络

几十年来,编程语言简单地将网络视为 I/O 源,Ballerina 引入了最基本的客户端对象、服务、资源函数和监听器的新抽象,以将网络引入该语言,这样可以让开发者直接将分布式计算中可能出现的错误作为其应用逻辑的一部分来解决。这有助于开发弹性、安全,并且高性能的网络应用。

根据官网介绍,Ballerina 的创造受到许多其它编程语言与工具的启发,包括:Java、Go、C、C++、D、Rust、Haskell、Kotlin、Dart、TypeScript、JavaScript、Python、Perl、Flow、Swift、Elm、RelaxNG、NPM、Crates、Maven、Gradle、Kubernetes、Docker、Envoy、Markdown、GitHub 与 WSO2。

展开阅读全文
20 收藏
分享
加载中
精彩评论
没有受erlang启发?
2019-09-11 09:08
4
举报
SDL 语言也能干这个事情的,而且成熟得多,当然也复杂得多,可惜没有好的开源编译器和开发环境,只有IBM Tau SDL suite
2019-09-11 11:15
1
举报
最新评论 (9)
根据官网介绍,Ballerina 的创造受到许多其它编程语言与工具的启发,包括:Java、Go、C、C++、D、Rust、Haskell、Kotlin、Dart、TypeScript、JavaScript、Python、Perl、Flow、Swift、Elm、RelaxNG、NPM、Crates、Maven、Gradle、Kubernetes、Docker、Envoy、Markdown、GitHub 与 WSO2。
—— 真好,没有 # 家族的任何一个!
只是奇怪,他是做到的?
昨天就有人在群里提这个了。
2019-09-12 11:03
0
回复
举报
这个语言是干嘛的?怎么云法?有点像在线编辑
2019-09-11 17:31
0
回复
举报
每天冒出来一种,把程序员精力耗尽
2019-09-11 17:10
0
回复
举报
大家加油学阿。
2019-09-11 16:00
0
回复
举报
看介绍,这是个语义化的工具,能不能算编程语言呢?
2019-09-11 13:39
0
回复
举报
SDL 语言也能干这个事情的,而且成熟得多,当然也复杂得多,可惜没有好的开源编译器和开发环境,只有IBM Tau SDL suite
2019-09-11 11:15
1
回复
举报
名字太长
2019-09-11 10:32
0
回复
举报
不支持TCP??
2019-09-11 09:45
0
回复
举报
没有受erlang启发?
2019-09-11 09:08
4
回复
举报
更多评论
9 评论
20 收藏
分享
返回顶部
顶部