`
Eastsun
  • 浏览: 308776 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

Scala2.8预览——值得期待

阅读更多
  Scala在2.7.4之后的下一个重要版本将会是2.8。相对以前的版本,该版本将作出飞跃性的改进:包括一些期盼已久的特性,一些重大的修改和增添。

  Scala2.8中包含的特性:

1.重新设计的集合框架。
  Scala的集合类的层次结构被重新设计,以更加规范,易用,高效。将会有一份白皮书阐述该设计。用户大部分已有的代码不会受到影响,但是那些对集合类的实现代码,比如sequence,set,map,etc.需要修改以适应新的集合框架。

2.命名参数与默认参数。
  方法的参数能够通过参数名传递,并且参数能具有默认值。

3.Package object。
  现在不仅可以在源文件中定义package,而且可以使用一些特殊的object来定义package,该object内列出的成员属于该package。譬如,你可以在这样的object中添加一些类型别名(type alias),这些类型别名将作为该package的成员从而可见。新的集合框架中使用该功能以保证向后兼容性。比如,List类在新的库中位于scala.collection.immutable package中,而之前是位于scala package中。通过定义如下的package object使得之前使用List的代码在新的集合框架中任然可用:
package object scala {
  type List[+A] = scala.collection.immutable.List[A]
  val List = scala.collection.immutable.List
    ...
}


4. 增强的Scala Swing库。
  scala.swing包中将增添一些新的功能,并且将具有更好的文档说明。

5. continuations的支持。
  一个编译器插件将做为Scala的附属特性来支持continuations。这是通过一个类型引导的continuation传递转换来完成的。Continuation对于诸如异步I/O,UI事件处理以及数据流并发之类的高级控制建造十分有帮助。

6.类型特殊化。
  引入一个使用于类型参数的annotation:@specialize。该annotation能够针对泛型代码中的基本类型生成特殊的代码,这样可以避免昂贵的boxing 和 unboxing操作,以显著提高代码的执行速度。

7.改善的REPL。
  Scala的交互命令控制台添加了一些新的功能,特别的命令完成功能将可以使用。

8.Packrat parser combinators
  Scala的解析合并器库将升级至“packrat解析”。这对于效率有很大帮助,并且允许更多语法格式被表达为解析子(parser)。

  之前版本中大部分被标为deprecated的类与方法在2.8中将被去除,并且不再支持Java1.4。class文件的格式会发生改变,因此Scala2.8与之前版本二进制文件不兼容。但很大程度上保持了源代码兼容性。
  按照计划,Scala2.8的第一个beta版将在6月初发布。只有6个多星期了,期待吧!
10
0
分享到:
评论
3 楼 Eastsun 2009-04-25  
文章中第5条
5.Support for continuations.
与第8条
8.Packrat parser combinators
我没有翻译,因为对这两个东东不甚了解。
刚才google一下continuations,稍稍看了些资料,貌似是个很有意思的东西。
这里是关于continuations的英文wiki,这里有一篇关于Ruby中continuations的介绍。
2 楼 mathgl 2009-04-25  
老子买了那本  programming in scala. 希望那天作者能update一下好。
1 楼 metadmin 2009-04-24  
新东东层出不穷呀。  

软件业内一片繁荣景象。。    我很久没有学习新技术了。。

相关推荐

    scala2.8 api

    scala 2.8 api 文档 chm格式

    scala-collections-charts:Scala 2.8 Collections API主要类型为点图(GraphViz)

    Scala 2.8 Collection API图表 这是 .dot文件的一个小集合,其中包含与Scala 2.8 Collection API最相关类型的图表说明。 您可以在上看到最终结果。 这些图表也可以在上。 任何反馈当然都是非常欢迎的。 如何建造 在...

    scala-2.8.0.final(1)

    scala-2.8.0.final scala-2.8.0.final

    IDEA集成scala(csdn)————程序.pdf

    **IDEA集成Scala编程环境详解** 在现代软件开发中,IntelliJ IDEA作为一款强大的Java集成开发环境(IDE),也提供了对Scala语言的完美支持。本文将详细介绍如何在IntelliJ IDEA中集成Scala开发环境,以便高效地进行...

    邮电学院Scala大数据实时处理——基于Lambda架构的Spark源码

    项目概述:邮电学院Scala大数据实时处理——基于Lambda架构的Spark源码实践 本项目为邮电学院假期师资培训的成果,主要采用Scala语言开发,围绕Lambda架构构建了一套实时数据流处理系统。项目包含35个文件,其中...

    xalanjava源码-SyntaxDiagramGenerator:Scala2.8的语法图生成插件,基于http://blog.32lea

    xalan java源码基于以下位置的示例代码和示例: 根据原始知识共享署名-相同方式共享 3.0 未移植许可证获得许可。 在 SBT 中,运行package来构建。...project/boot/scala-2.8.0/lib/scala-library.j

    scala编程_完整版——带目录

    Scala 是一门多范式(multi-paradigm)的编程语言,设计初衷是要集成面向对象编程和函数式编程的各种特性。 Scala 运行在Java虚拟机上,并兼容现有的Java程序。 Scala 源代码被编译成Java字节码,所以它可以运行于...

    Programming-in-Scala-2nd.pdf

    advantage of the latest features in Scala 2.8, and to using this book as the definitive reference for it, direct from the creator of the language I’ve grown to depend on. Alex Payne Portland, Oregon ...

    maven-scala-plugin-2.8.jar

    maven-scala-plugin-2.8.jar

    scala连接redis哨兵模式 demo 使用scala的redis库(csdn)————程序.pdf

    Scala是一种强大的编程语言,它结合了面向对象编程和函数式编程的优势。在大数据处理、实时数据处理以及云服务开发领域,Scala常常作为首选语言。由于其简洁性和高效的性能,Scala常用于构建高性能的网络服务和后端...

    Scala编程英文第二版

    Scala 2.8引入了类型推断的改进,增强了类型系统,如类型类和类型构造器。另外,还引入了新的模块系统,以更好地组织和管理大型项目。 **编程实践** 《Programming in Scala, 2nd Edition》这本书详细介绍了如何...

    Programming in Scala 2nd Edition

    本书是为Scala 2.8版本更新的,因此包含了最新的特性和技术改进。 #### 书籍特色 1. **全面性**:本书通过循序渐进的方式,为读者提供了一个从基础到高级的完整学习路径。 2. **深入浅出**:作者不仅提供了代码...

Global site tag (gtag.js) - Google Analytics