在首次发布 20 个月之后, Dart 语言及其虚拟机发布 Beta 版本,这也是 M5 版本。当前版本有很多小的改进,其中与编辑器、虚拟机和dart2js 相关的几项最为重要。
据负责改进Dart 开发效率的Dan Rubel 介绍,Dart 的Eclipse 编辑器中包含的代码分析器已经完全重写,速度提升20% 。该编辑器也会在开发者键入代码时生成错误和警告信息。代码补全功能可以感知驼峰大小写形式。新增的Pub Deploy 菜单项可以将所有代码和附加文件生成在一个目录下,供Web 服务器加载。
相对于四月份发布的M4 版本,虚拟机在DeltaBlue 基准测试程序上快了40%,在Tracer 基准测试程序上快了33% 。SIMD 得到进一步优化。Dart 团队希望通过实现 SIMD ,将 Web 应用的性能提到一个新台阶,进而有能力把 WebGL、Canvas、动画和物理仿真等功能用到的数据密集型算法的处理速度提升 2 到 3 倍( PDF )。
相对于 M4 版本,dart2js 编译器现在生成的代码最多可以小3.7 倍,性能也有所改进:在DeltaBlue 基准测试程序上快10%,在Richards 上快20%,在Tracer 上则快8%。
开发团队也已经开始使用 Polymer 重新实现 Web UI。Polymer 是一个使用 HTML5 Web 组件构建 Web 应用的库。
所有改进信息,请参阅发行说明。
尽管 Dart 已经是 Beta 版本,但是何时会进入 Chrome 还不得而知,不过 Dart 项目的联合创建者 Lars Bak 和 Kasper Lund 在回答问题时透露,Dart 在 Google 内部拥有强有力的支持,希望开发者打消疑虑:
Dart 会进入 Google Chrome,它已用于内部的一些关键项目,而且它还有一个正在成长的社区。Dart 有来自 Chrome 的贡献,也有一个规模庞大且经验丰富的团队在为之工作,而且该团队正在研究如何让 Dart 进入某个标准化组织。
关于未来的语言特性,Bak 和 Lund 打算引入枚举,并计划“探索异步(async)特性”。他们还计划将其性能提升到 V8 的两倍,该目标已经在 DeltaBlue 和 Tracer 基准测试程序中实现。他们还考虑支持 Intel AVX 256 位指令集。
我们有计划利用新的 AVX 指令集。一个例子是添加适合放入新的 256 位宽寄存器中的 Float32x8 类型。另一个例子是使用新的 gather 和 permute 指令。
此时他们尚无计划“让 Dart 支持 GPU 编程”。
Google 并没有透露 Dart 的 Beta 阶段会持续多长时间,但是据他们的工程师介绍,最终的1.0 版本有望不久发布,可能就在今年夏季或秋季。
查看英文原文: Dart Has Entered Beta with Faster VM, Editor and dart2js
评论