写点什么

Scala 的未来

  • 2014-08-31
  • 本文字数:983 字

    阅读完需:约 3 分钟

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 字面量进行包裹。

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

查看英文原文: The Future of Scala

2014-08-31 14:045323
用户头像

发布了 52 篇内容, 共 24.4 次阅读, 收获喜欢 5 次。

关注

评论

发布
暂无评论
发现更多内容

从Oracle到TiDB,全链路数据迁移平台核心能力和杭州银行迁移实践

TiDB 社区干货传送门

关于 TiDB 升级后结果不一致问题

TiDB 社区干货传送门

管理与运维 故障排查/诊断 新版本/特性解读 应用适配 6.x 实践

TiKV Raft 快照全流程丨TiKV 源码解读(二十二)

TiDB 社区干货传送门

巧用商品详情数据,制定精准营销策略

Noah

TON链上的代币开发与小程序开发:模式与要求

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 NFT开发 公链开发

顶尖选择:5个RPA主流产品性能评测

八爪鱼采集器︱RPA机器人

RPA 自动化 RPAxAI

唐刘:当 SaaS 爱上 TiDB(一)- 行业挑战与 TiDB 的应对之道

TiDB 社区干货传送门

基于资源管控+TiCDC实现多业务融合容灾测试

TiDB 社区干货传送门

实践案例 7.x 实践

Apache Paimon V0.9最新进展

Apache Flink

大数据 flink 实时计算 湖仓一体 paimon

敦煌智旅:Serverless 初探,运维提效 60%

阿里巴巴云原生

阿里云 Serverless 云原生

金融企业区域集中库的设计构想和测试验证

TiDB 社区干货传送门

SHOPLINE x TiDB丨集群成本降低 50%!跨境电商 SHOPLINE 交易、商品管理等核心业务的数据库升级之路

TiDB 社区干货传送门

扩容过程中 PD 生成调度的原理及常见问题

TiDB 社区干货传送门

监控 故障排查/诊断 扩/缩容 7.x 实践

竞技世界 x TiDB丨注册用户超 5 亿,大规模数据及高并发场景下分布式数据库从 1 到 N 的演进

TiDB 社区干货传送门

KubeCon China 2024全球大会在香港举行,京东云受邀参加探讨云原生、开源及 AI

京东科技开发者

Gate.io盘前交易:DOGS热潮下抢先交易的新策略

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 NFT开发 公链开发

分布式数据库系统环境的“无感”升级

TiDB 社区干货传送门

Titan 引擎:通过从 LSM-Tree 中分离大值,实现 6 倍的写入性能的提升

TiDB 社区干货传送门

TiDB 扩缩容原理及常见问题

TiDB 社区干货传送门

管理与运维 故障排查/诊断 扩/缩容 TiKV 底层架构 7.x 实践

TiKV 副本搬迁原理及常见问题

TiDB 社区干货传送门

扩/缩容 7.x 实践

RPA行业发展前景:2023-2026年5大预测

八爪鱼采集器︱RPA机器人

RPA 自动化 RPAxAI

Elasticsearch 8 RAG 技术分享

阿里云大数据AI技术

人工智能 elasticsearch 数据仓库 数据分析

京东小程序折叠屏适配探索

京东科技开发者

缩容 TiKV 原理及常见问题

TiDB 社区干货传送门

集群管理 扩/缩容 7.x 实践

“AI+Security”系列第2期(五):大模型自身安全

云起无垠

脉讯在线:核心TiDB 从 5.4 升级到 7.1 集群 CDC 性能翻倍

TiDB 社区干货传送门

实践案例 版本升级 性能测评

社区版 2024.8 | CloudQuery社区版取消可创建用户数限制!!

BinTools图尔兹

数据脱敏 数据库管控 数据库安全 CloudQuery

一起单测引起的项目加载失败惨案

京东科技开发者

数业智能心大陆AI大模型,共情陪伴你的心理健康

心大陆多智能体

智能体 AI大模型 心理健康 数字心理

Scala的未来_Scala_Matt Raible_InfoQ精选文章