Scala 编程语言

可伸缩的语言是一种多范式的编程语言,一种类似Java的编程 ,设计初衷是要集成面向对象编程和函数式编程的各种特性。Scala是在JVM上运行。

Scala编程语言近来抓住了很多开发者的眼球。如果你粗略浏览Scala的网站,你会觉得Scala是一种纯粹的面向对象编程语言,而又无缝地结合了命令式和函数式的编程风格。Christopher Diggins认为:
不太久之前编程语言还可以毫无疑义地归类成“命令式”或者“函数式”。Scala代表了一个新的语言品种,它抹平了这些人为划分的界限。
根据David Rupp在博客中的说法,Scala可能是下下一代Java。这么高的评价让人不禁想看看它到底是什么东西。
Scala有几项关键特性表明了它的面向对象的本质。例如,Scala中的每个值都是一个对象,包括基本数据类型(即布尔值、数字等)在内,连函数也是对象。另外,类可以被子类化,而且Scala还提供了基于mixin的组合(mixin-based composition)。
与只支持单继承的语言相比,Scala具有更广泛意义上的类重用。Scala允许定义新类的时候重用“一个类中新增的成员定义(即相较于其父类的差异之处)”。Scala称之为mixin类组合。
Scala还包含了若干函数式语言的关键概念,包括高阶函数(Higher-ORDEr Function)、局部套用(Currying)、嵌套函数(Nested Function)、序列解读(Sequence Comprehensions)等等。
Scala是静态类型的,这就允许它提供泛型类、内部类、甚至多态方法(Polymorphic Method)。另外值得一提的是,Scala被特意设计成能够与Java和.NET互操作。Scala当前版本还不能在.NET上运行(虽然上一版可以-_-b),但按照计划将来可以在.NET上运行。
Scala可以与Java互操作。它用scalac这个编译器把源文件编译成Java的class文件(即在JVM上运行的字节码)。你可以从Scala中调用所有的Java类库,也同样可以从Java应用程序中调用Scala的代码。用David Rupp的话来说,

Scala 2.12.4 发布,编译时间再减少 5-10%
Scala 2.12.4 已发布,与上个版本比较,基准测试显示编译时间再减少5-10%。此外,还包含对 Java 9 支持的改进以及一些功能改进。Scala 是一门现代的多范式编程语言,志在以简练、优雅及类型安全的方式来表达常用编程模式。它平滑地集成了面向对象和函数语言的特性。更新内容:#6097 Fix runtime reflection of e

发布于 2017-10-21 00:47:13 | 159 次阅读

Scala 2.12.3 发布,多范式编程语言
Scala 2.12.3 发布了,Scala 是一门现代的多范式编程语言,志在以简练、优雅及类型安全的方式来表达常用编程模式。它平滑地集成了面向对象和函数语言的特性。更新内容:Compiler performance has improved significantly and is now automatically benchmarked after each change.A new opti

发布于 2017-07-28 06:49:41 | 152 次阅读

Scala Native 0.3.0 发布,将 Scala 代码编译成本机代码
Scala Native 0.3.0 发布了,Scala Native 是一个可将 Scala 代码编译成本机代码的开源项目。该版本的主要亮点是新垃圾收集器,基于 [1] 的Immix。与之前的垃圾收集器相比,差异和相似之处如下:跟踪垃圾收集精确的堆数据布局Conservative roots不依赖自由列表来分配内存吞吐量基准上,新的 Immix 的性能比原来的 Boehm 要

发布于 2017-06-16 02:57:16 | 175 次阅读

Scala Native 0.2.0 发布,将 Scala 代码编译成本机代码
Scala Native 0.2.0 发布了,Scala Native 是一个可将 Scala 代码编译成本机代码的开源项目。0.2 版本侧重于核心库的覆盖面和稳定性。还支持 java.util.Regex,java.io._ 等。值得关注的更新:#574 在 java.io.* 命名空间中添加了对 File I/O APIs 的初始支持#588 通过绑定到 Google 的 RE2 

发布于 2017-04-27 22:51:05 | 177 次阅读

Scala 2.12.1 发布,多范式编程语言
Scala 2.12.1 发布了,Scala 是一门现代的多范式编程语言,志在以简练、优雅及类型安全的方式来表达常用编程模式。它平滑地集成了面向对象和函数语言的特性。更新内容:提高 Vector 运行速度,恢复了以前的性能SI-10032 修复代码 gen与嵌套 try-finally 中的返回修复 2.12 回归、后端崩溃:无法从非类符号创建 ClassBT

发布于 2016-12-12 00:33:09 | 192 次阅读

编程语言 Scala 2.12.0 正式版发布
编程语言 Scala 2.12.0 正式版发布了。Scala 2.12.0编译器已经完全翻修,在J

发布于 2016-11-04 00:19:40 | 197 次阅读

编程语言 Scala 2.12.0-M3 发布
Scala 2.12.0-M3 发布,主要更新内容如下:The REPL received a robust and flexible implementation of tab-completion (details below) - a fruitful collaboration between @som-snytt and @retronymThe @implicitAmbiguous annotation allows customizing the error message when an implicit search finds multiple a

发布于 2015-10-07 00:18:44 | 230 次阅读

编程语言 Scala 2.10.6 发布
Scala 2.10.6 发布,此版本是个维护版本,二进制包兼容之前的 2.10 系列版本。Scala IDE当前的 Scala IDE 支持任意的 2.10.x 版本,现已提供下载。下载:https://github.com/scala/scala/archive/v2.10.6.zip  更多改进内容请看发行说明。

发布于 2015-09-20 01:02:28 | 221 次阅读

编程语言 Scala 2.12.0-M2 发布,要求 Java 8
Scala 2.12.0-M2 发布,相比 M1 值得关注的更新内容如下:要求 Java 8 Lambdas 编译成 Java 8 样式闭包此外还解决了 9 issues.  合并了 29 pull requests。跟往常一样,2.12.0-M2 二进制不兼容其他 Scala 版本。详细改进内容请看发行说明。下载:https://github.com/scala/scala/archive/v2.12.0-M2.zip。Scala是一门

发布于 2015-07-20 00:17:54 | 207 次阅读

编程语言 Scala 2.11.7 发布
编程语言 Scala 2.11.7 发布,值得关注的更新如下:The Scala REPL is now easier for projects such as Spark to embed and customize (PR #4563, SI-7747).Pattern matching is now faster on large numbers of cases (SI-7747).Experimental support for Java 8 lambdas is available via -Ydelambdafy

发布于 2015-06-24 00:58:14 | 179 次阅读

编程语言 Scala 2.12.0-M1 发布
Scala 2.12.0-M1 发布,Scala 2.12 系列的目标是 Java 8。下载:scala-lang.org Maven CentralScala 2.12 改进计划:Java 8 style closures.Lambda syntax for SAM typesNew backend and optimizer将会移除的模块:The Scala actors library is no longer released with Scala 2.12The Scal

发布于 2015-05-09 23:52:25 | 212 次阅读

编程语言 Scala 2.10.5 发布
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 现

发布于 2015-03-09 00:25:58 | 231 次阅读

Slick 3.0.0 RC1 发布,Scala 数据库访问层
Slick 是 TypeSafe 推出的 Scala 数据库访问库。开发者可以使用 Scala 语言风格来编写数据查询,而不是用 SQL,示例代码:object Coffees extends Table[(String, Int, Double)]("COFFEES") {   def name = col

发布于 2015-02-24 00:54:46 | 505 次阅读

Scala Plugin for IntelliJ IDEA 1.3 EAP 发布
Scala Plugin 1.3 EAP 发布,此版本包括更好的调试器。此版本添加了一些小,但是非常重要的调试器改进:The variables from outer scopes are visible in the Variables tab nowStepping into now works in a more natural way for lambda expressions, methods implemented in tra

发布于 2014-12-25 23:52:19 | 213 次阅读

Scala 2.11.2 发布!编程语言
Scala 2.11.2 发布,此版本现已提供下载,也可以通过 Maven 库获取。此版本是个 bug 修复版本,二进制兼容 Scala 2.11 系列,改进记录:Several issues in the collections library were resolved (SI-8738).The optimizer no longer eliminates division instructions that

发布于 2014-07-27 00:23:54 | 191 次阅读

Scala 2.12 发布计划
Scala 2.12 会要求 Java 8,Scala 2.11 将会继续支持 Java 6。以下是 Scala 2.11 和 Scala 2.12 的共有特性: Compile lambdas efficiently using method handles. (Separate compatibility module needed on 2.11 – see below.) Java 8 interop (bidirectional): Fully integrate Miguel’s n

发布于 2014-06-30 23:23:14 | 233 次阅读

Scala 和 Play 2 插件 0.41 更新发布
Scala 和 Play 2 插件 0.41 更新发布,主要更新内容如下:支持 Scalastyle 改进隐式参数显示更好的支持 Spray 支持 Unicode arrows 打开/删除 操作支持 Procedure 语法检查代码中方差位置的错误高亮改进了 SBT 文件的代码自动完成功能快速修

发布于 2014-08-06 23:22:59 | 278 次阅读


Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务