Google V8团队将在今年10月10日于丹麦公布一个新的Web脚本语言Dart,这个消息作为Keynote将是Google GOTO大会的一个重磅炸弹。Dart是一门什么样的编程语言?

Dart, a new programming language for structured web programming.

揭幕这个语言的演讲者是Lars Bak,是Google虚拟机领域的专家,参与了Chrome浏览器中V8 JavaScript引擎的开发。虽然官方还没有给出Dart的详细说明,但是我们通过Keynote标题以及作者背景了解到,这个新语言应该是跟浏览器Chrome以及VM相关。

New Language

一年前,Google内部JavaScript群组以及Buzz上,透露了Google当时正在改进JavaScript并且在研发一门新的Web编程语言Dash,负责Dash的正是Lars Bak,因此有理由相信当年的Dash应该就是即将面世的Dart的项目代号。

Google认为目前Web领域的发展已经完全超越了JavaScript相关技术更新的步伐,越来越多的应用采用JavaScript开发,但是语言本身的缺陷,导致需要维护大量的代码。并且很多创新的项目开始从Web平台迁移到iOS和其他平台。Google开发的复杂Web应用,忍受着JavaScript本身不可加工性(cannot be tooled),并且一直受着性能的牵制。而大规模的小型Web项目常常迷失在种种JavaScript框架中,被各种各样的开发模式所困扰。

Dash语言的三个目标:

  • 性能 - Dash要彻底解决如今EcmaScript的虚拟机面临的性能问题
  • 开发者友好 - 比JavaScript更加动态,易上手,没有编译器特性
  • 可加工性(be Tooled) - Dash将被设计成容易扩展(比如,含有optional types),对于规模大的互联网项目,能够提供代码支持特性,如重构或者查找调用入口点(意味着可以提供IDE级别支持)。当然,Dash对于大多数项目完全是利用文本编辑器即可配合开发的。

此外,Dash也会考虑安全性。Dash被设计成使用在以下一些地方:

  • Browser VM - Dash作为浏览器客户端的语言,将可以完全取代JavaScript
  • Front-end Server - Dash也可以作为服务器端语言
  • Dash Cross Compiler - 在没有Dash VM的地方,可以把Dash编译成JavaScript给传统平台调用

由此,Dash/Dart想取代JavaScript成为一个全新的Web客户端语言的目标显露无疑。而且最终染指服务器编程,可见其野心之大。但是如今Chrome浏览器的全球市场规模还达不到1/4,摆在Google眼前一个很艰巨的任务是,如何说服Mozilla,Microsoft,Apple等这些浏览器霸主跟其合作,将他们的新语言推向市场。当然还有如今数不尽的JavaScript受益公司和组织,他们的前途又将如何?Node.js,CoffeScript又将有何反应?