安基网 首页 存档 IT技术 查看内容

Scala的未来

2018-3-30 13:00| 投稿: winskyer |来自: 互联网


免责声明:本站系公益性非盈利IT技术普及网,本文由投稿者转载自互联网的公开文章,文末均已注明出处,其内容和图片版权归原网站或作者所有,文中所述不代表本站观点,若有无意侵权或转载不当之处请从网站右下角联系我们处理,谢谢合作!

摘要: Scala团队最近发表了一篇题为《Scala的下一步计划》的文章,这篇文章对Scala这门语言的未来进行了描述,并对Scala后续的三个主要版本的特性和目标进行了细化:改善语言和它的类库,从而让它变得更容易理解、更加健壮 ...

Scala团队最近发表了一篇题为《Scala的下一步计划》的文章,这篇文章对Scala这门语言的未来进行了描述,并对Scala后续的三个主要版本的特性和目标进行了细化:改善语言和它的类库,从而让它变得更容易理解、更加健壮,并且性能更好。

Scala 2.12是下一个主要版本,在最近的InfoQ文章《Scala 2.12将只支持Java 8》中已有所介绍。而再接下去的两个版本将以代号的方式命名,分别是Aida和Don Giovanni。2.12版的主要目标是与Java 8的互操作性,而Aida则专注于简化集合框架,Don Giovanni将会对语言进行改进,并会提升编译器的速度。Don Giovanni版还计划与项目Valhalla合作,因为这两个项目具有相似的愿景。

项目Valhalla是一个实验性的OpenJDK项目,该项目旨在开发那些同时需要更改语言语法和虚拟机级别支持的主要的Java新特性。其中Scala想要利用的两个Valhalla特性是实现泛型的新方式和值类型。

虽然向后的兼容性并不能得到保证,但是将会构建一个源代码的迁移工具来支持跨不同版本的构建。普通的Scala代码将可以很容易地进行移植,但是例如像宏(macros)这样的实验性的特性将无法得到支持。

Julian Gamble是Clojure Recipes的作者,他为Hacker News的文章添加了一些上下文信息。他提到Scala编译器的首席开发Paul Philips在去年曾进行过一次标题为“我们做的一切都错了”的分享。你可以观看他分享内容的视频,或者下载他分享的幻灯片。Gamble认为《下一步计划》这篇文章是Martin Odersky对这一现状的回应,而Gamble对他的实际行动表示了赞赏。

根据 Scala 2.12 路线图,这一版本在2016年1月之前都不会计划发布。Hacker News上的一些人表达了对向后兼容性的关注。Scala的首席设计师Martin Odersky对此作出了回应:

我们将会尝试尽可能灵活地划清新老版本的边界,而它们两者的lint工具和语言导入将会是这一工作的重要部分。

同样也要注意那些我们所考虑的重写,数量多且相当琐碎。例如在你每次使用过程调用语法的时候会插入一句": Unit = ",或者会对xml"""..."""中每一个XML字面量进行包裹。

唯一让我感到有一些不放心的事就是那些试验性的特性。它们将无法干净地进行移植,而我现在的建议会是:如果你想你的代码不经过大量重写就能通过转换,那么请不要使用实验性特性。它们也许很吸引人,但是它们将会给你埋下一个个坑。

本文转载自:微信公众账号 - InfoQ,版权归原作者所有!


小编推荐:欲学习电脑技术、系统维护、网络管理、编程开发和安全攻防等高端IT技术,请 点击这里 注册账号,公开课频道价值万元IT培训教程免费学,让您少走弯路、事半功倍,好工作升职加薪!



免责声明:本站系公益性非盈利IT技术普及网,本文由投稿者转载自互联网的公开文章,文末均已注明出处,其内容和图片版权归原网站或作者所有,文中所述不代表本站观点,若有无意侵权或转载不当之处请从网站右下角联系我们处理,谢谢合作!


鲜花

握手

雷人

路过

鸡蛋

相关阅读

最新

返回顶部