可将Scala转成JavaScript的编译器Scala.js发布1.0

历经7年开发之后,Scala.js终于推出了1.0正式版,官方提到,Scala.js 1.0是从语言语义到内部API各方面,皆经过简化与改良的成果。Scala.js为一款可将多范式开发语言Scala编译成为JavaScript的工具,让Scala程序能够在浏览器和其他支持JavaScript的环境执行,可大幅提升Scala的可移植性,以及与JavaScript的互通性。

Scala.js花了很长一段时间发展0.6.x版本,经过了5年提升其稳定性,终于现在走到了1.0,由于1.0版本删除了所有0.6.x版本弃用的功能,因此无论是0.6.x版本,或是先前发布1.x系列的里程碑版本与候选版,二元档都与最新的1.0正式版本不兼容,开发者必需要使用1.0重新编译和发布函数库。部分Scala和Scala.js函数库也已经开始提供与Scala.js 1.0兼容版本。

原本使用旧版本Scala.js的开发者,官方建议,要从旧版本升级至1.0,最好先至少升级到Scala.js 0.6.32或是更新版本,并且处理完所有弃用警示再进行升级,才能确保升级过程的顺利。

官方也提到,由于主要的JavaScript引擎都已经支持ECMAScript 2015一段时间,因此现在Scala.js在默认情况下,会输出符合ECMAScript 2015规范的程序代码,比起旧版ES 5.1,除了产生的程序代码更短,JavaScript的Error也获得扩展,多了一个ErrorData内部占位符,因此可以在JavaScript引擎收到适当的调试信息,使交互式调试器将能良好地显示堆栈关注和错误消息。