此文档页面专门针对 Scala 3,可能涵盖 Scala 2 中没有的新概念。除非另有说明,否则此页面中的所有代码示例都假设您使用的是 Scala 3。
让我们谈谈 Scala 3 系列
让我们谈谈 Scala 3 是一个关于 Scala 3 的简短(约 15 分钟)演讲系列。它涵盖了各种主题,例如如何入门,如何利用新的语言功能,或者如何从 Scala 2 迁移。
关于 Scala 3 的演讲
-
(ScalaDays 2019,洛桑) Scala 3 导览 由 Martin Odersky 主讲
-
(ScalaDays 2016,柏林) Scala 的未来之路 由 Martin Odersky 主讲 [幻灯片]
-
(JVMLS 2015) 编译器就是数据库 由 Martin Odersky 主讲 [幻灯片]
-
(Scala World 2015) Dotty:探索 Scala 的未来 由 Dmitry Petrashko 主讲 [幻灯片]。Dmitry 涵盖了 Dotty 带来的许多新功能,例如交集和并集类型、改进的惰性 val 初始化等等。Dmitry 还涵盖了 dotty 内部,特别是 Dotty 的上下文抽象的高级水平。您将熟悉许多核心概念,例如
Denotations
,它们随着(编译)时间的推移而演变,它们的转换等等。
深入 Scala 3
-
(ScalaDays 2019,洛桑) Dotty 中的元编程 由 Nicolas Stucki 讲解。
-
(ScalaDays 2019,洛桑) Scala 的未来:TASTY 中间表示 由 Guillaume Martres 讲解。
-
(2017 年 3 月 21 日) Dotty 内部 1:树和符号 由 Dmitry Petrashko 讲解 [会议记录]。这是 EPFL 和滑铁卢大学之间的一次录制会议,我们介绍了 Dotty 中的第一个概念:树和符号。
-
(2017 年 3 月 21 日) Dotty 内部 2:类型 由 Martin Odersky 和 Dmitry Petrashko 讲解。这是 EPFL 和滑铁卢大学之间的一次录制会议,我们介绍了 Dotty 中的类型表示方式。
-
(2017 年 6 月 15 日) Dotty 内部 3:指称 由 Martin Odersky 和 Dmitry Petrashko 讲解。这是 EPFL 和滑铁卢大学之间的一次录制会议,我们介绍了 Dotty 中的指称。
-
(JVM 语言峰会) 如何使 Dotty 编译器更快 由 Dmitry Petrashko 讲解。 Dmitry Petrashko 对使 Dotty 更快的措施进行了高层次的介绍。
-
(Typelevel 峰会奥斯陆,2016 年 5 月) Dotty 和类型:迄今为止的故事 由 Guillaume Martres 讲解 [幻灯片]。Guillaume 专注于 Dotty 对类型系统的一些实际改进,例如新的类型参数推断算法,它能够比 scalac 推断更多情况下的类型安全。
-
(flatMap(Oslo) 2016) Dotty 中的自动特化 by Dmitry Petrashko [幻灯片]。Dotty 链接器分析您的程序及其依赖项以应用新的特化方案。它基于我们在特化、Miniboxing 和 Valhalla 项目中的经验,并大幅减少了生成的字节码大小。最棒的是,它始终启用,在后台运行,无需注释,并且可以将速度提高 20 倍以上。此外,它“开箱即用”地适用于 Scala 集合。
-
(ScalaSphere 2016) Dotty 黑客:现场演示 by Guillaume Martres [幻灯片]。Guillaume 在 Dotty 上进行黑客攻击:一个现场演示,他创建了一个简单的编译器阶段来在运行时跟踪方法调用。
-
(Scala By the Bay 2016) Dotty:它是什么以及它是如何工作的 by Guillaume Martres [幻灯片]。Guillaume 提供了 Dotty 编译管道的概述。
-
(ScalaDays 2015, Amsterdam) 使用 Dotty 链接器使您的 Scala 应用程序更小更快 by Dmitry Petrashko [幻灯片]。Dmitry 介绍了 Dotty 实现的调用图分析算法,以及我们在方法数量、字节码大小、JVM 代码大小和最终分配的对象数量方面可以获得的性能优势。