红联Linux门户
Linux帮助

编程语言Scala 2.10.5发布

发布时间:2015-03-09 08:49:34来源:红联作者:empast
Scala 2.10.5 发布,此版本是 Scala 2.10.x 系列的最后一个维护版本,强烈建议大家升级到 Scala 2.11.6 版本。

Scala 2.10.5 值得关注的改进:

修复了 Scaladoc's JavaScript 一个跨站脚本漏洞

对比 2.10.4 版本,此版本解决了 10 issues。

Scala IDE 现已提供下载。

相比 2.10.4 版本的改进内容:

Library

SI-7710 fix memory performance of RegexParsers in jdk7u6+ (fceae7084c)

SI-8589 Performance improvement for ArrayCharSequence.toString (099a426dd6)

SI-8689 Avoid internal error in Promise after sequence of completions (bf20737faa)

SI-8787 Backport Regex doc (887622759d)

XML Support

SI-4339 Event errors and attribute fix (fe7867f8a7)

SI-9027 xml parser fix (736293ab09)

SI-9060 Backpatch fifth-edition names (b4e3becbf3)

Compiler

SI-7753 substitution broken for dependent types (2f5ff595fd)

SI-7756 Uncripple refchecks in case bodies (0022dccfde)

SI-8442 Ignore stub annotation symbols in AnnotationInfo#matches (8262ed2fc6)

SI-8596 Fix rangepos crasher with defaults, poly methods (d288790429)

Scaladoc

SI-8479 Fix constructor default args under scaladoc (c4561c1d49)

Scaladoc js location synch more robust (f95b5b9b80)

Macros/Reflection

SI-7470 implements fundep materialization (0c5dd9e02f)

SI-8196 Runtime reflection robustness for STATIC impl details (7b72f95a9e)

-Xfundep-materialization => -Yfundep-materialization (5966a11ae1)

transformers no longer ignore UnApply.fun (36379cf8af)

no longer warns on calls to vampire macros (db300d4d9e)

typecheck(q"class C") no longer crashes (3314d76ceb)

更多内容请看发行说明。

Scala是一门现代的多范式编程语言,志在以简练、优雅及类型安全的方式来表达常用编程模式。它平滑地集成了面向对象和函数语言的特性。

Scala是面向对象的:Scala是一个纯面向对象语言,在某种意义上来讲所有数值都是对象。对象的类型和行为是由class和trait来描述的。Class的抽象可由子类化和一种灵活的基于mixin的组合机制(它可作为多重继承的简单替代方案)来扩展。

Scala是函数式的: Scala还是一个函数式语言,在某种意义上来讲所有函数都是数值。Scala为定义匿名函数提供了一种轻量级的语法,它支持高阶(higher- order)函数、允许函数嵌套、支持局部套用(currying)。Scala的case类及其内置支持的模式匹配模型代数类型在许多函数式编程语言中 都被使用。

Scala是静态类型的:Scala配备了一套富有表现力的类型系统,该抽象概念以一种安全的和一致的方式被使用。

Scala是可扩展的:Scala的设计承认了实践事实,领域特定应用开发通常需要领域特定语言扩展。Scala提供了一个独特的语言组合机制,这可以更加容易地以类库的形式增加新的语言结构:两者结合使用可方便地定义新语句,无需扩展语法,也无需使用类似宏的元编程工具。

任何方式可以被用作中缀(infix)或后缀(postfix)操作符

闭包按照所期望的类型(目标类型)自动地被构造

Scala可与Java和.NET进行互操作:Scala 设计时就考虑了与流行编程环境良好交互,如Java 2运行时环境(JRE)和 .NET框架(CLR)。特别是与主流面向对象语言,如Java和C#尽量无缝交互。Scala有像Java和C#一样的编译模型(独立编译,动态装载 类),允许访问成千上万的高质量类库。

在线Scala文档:http://www.ostools.net/apidocs/apidoc?api=scala-docs-2.9.2

软件详情:https://github.com/scala/scala/releases

下载地址:http://scala-ide.org/download/sdk.html

来自:开源中国社区
文章评论

共有 0 条评论