KEEP - Kotlin 语言进化和增强过程
此存储库包含针对 Kotlin 编程语言 的建议提案,其中包括进行中提案的设计草稿和讨论,以及已实施变更的设计文档。
这些建议通常被称为 KEEP。它们涵盖了语言本身及其标准库。
相应设计增强的实施通常位于 Kotlin 源代码仓库中。
当前 KEEP
设计笔记
一些正在讨论用于 Kotlin 的特性思路代表了潜在增强的重要方向,但尚未完善到可以称之为设计提案的地步。它们仍需要与 Kotlin 社区进行讨论,以收集这些特性的使用场景、可能的语法、对现有 Kotlin 代码的影响等。它们被称为"设计笔记",并存储在单独的notes目录中。
如何参与设计过程
语言增强/特性通常经历以下非正式阶段:
- 对想法进行讨论。
- 收集使用场景。
- 设计提案和原型实现。
- 在语言中进行实验支持。
- 进一步细化和稳定版本发布。
所有阶段都涉及对相应特性的反馈收集。即使特性已趋于稳定,收集反馈的过程也不会停止。社区反馈对于 Kotlin 语言增强过程的开放理念至关重要。
贡献想法
如果你对潜在的增强有一个模糊的想法,但不确定它是否值得追求和/或符合 Kotlin 语言,或者只是想获得社区反馈,你可以使用以下两种你最舒适的渠道:
- Kotlin 公共 Slack 上的 #language-proposals 频道(在这里获取邀请);
- Kotlin 论坛中的语言设计类别。
贡献使用场景和具体的增强提案
如果你有一个当前语言无法覆盖的用例,或者有一个具体的语言增强想法,那么请在 YouTrack 问题中的 Language Design
子系统中提出。
虽然许多流行的增强和语言设计问题已经被列在 Kotlin YouTrack 中,但你的贡献仍然非常重要:
- 👍 为你在工作中遇到的问题投票。
- 📝 用你的具体使用场景进行评论。
我们在语言设计方面的实践表明,贡献真实生活中的使用场景是 Kotlin 社区最有价值的反馈。
贡献设计提案(KEEP)
本仓库中的设计提案应该经过深思熟虑,通常伴有一个原型实现来证明其可行性。本仓库中的所有设计提案都应得到 Kotlin 编译器或其标准库相应子系统的维护者支持。
如果你对提议是否满足这些标准存在疑问,请先在适当的渠道讨论你的想法、使用案例或具体的增强,并从维护者那里获得对你的一般想法/提案的支持,然后再提交一个 KEEP。
我们将逐步将未得到 Kotlin 维护者支持的 KEEP 移至 YouTrack 问题,以进一步讨论。
对现有 KEEP 做出贡献
- 对于正在进行的 KEEP,请将讨论保持在相应的问题中。
- 如果你发现已合并 KEEP 的_文本_存在问题或需要修正,欢迎创建单独的问题或拉取请求来提出修改建议。