Carbon编程语言的目标是成为更好的C++

237 阅读2分钟

实验性的C++继任者努力实现C++的性能和兼容性,同时避免其技术债务和 "极端困难 "的改进

是时候为坚挺的C++语言找一个继承者了吗?谷歌和其他组织的一组开发人员认为是这样的。

该小组支持一种名为Carbon的实验性语言,它提供了与C++的互操作性,同时克服了改进传统语言的所谓困难。Carbon试图克服这些障碍,从坚实的语言基础开始,例如现代泛型、简单的语法和模块化的代码组织,同时避免C或C++的 "几十年的技术债务"。

然而,他们强调,Carbon还没有准备好投入使用

Carbon的开发者承认,C++仍然是构建性能关键型软件的主流编程语言,并且拥有大规模和不断增长的代码库和投资。Carbon提出了一种继任方法,而不是一种进化,其目的是使现有的C++代码库和C++开发人员能够迁移。

Carbon是上周在多伦多举行的CppNorth会议上的一个演讲主题。Carbon的资源可以从项目的GitHub repo中获取。项目开发者列出了对C++继任者的以下要求,强调他们的方法可以建立在C++生态系统的基础之上:

  • 在性能上与C++相匹配
  • 与C++的无缝、双向的互操作性
  • 一个温和的学习曲线
  • 可比较的表达能力
  • 可扩展的迁移

Carbon的目的是与C++相似,就像TypeScriptJavaScriptKotlin与Java一样。设计者打算让Carbon支持性能关键型软件、软件和语言的进化,并且拥有安全和易于阅读和编写的代码。实用的安全和测试机制以及快速和可扩展的开发也是目标。明确的非目标包括为整个语言和库拥有一个稳定的ABI(应用二进制接口),以及完美的向后或向前兼容。

目前,还没有工作的Carbon编译器或工具链,但开发者可以检查该语言的演示解释器。开发人员可以参与GitHub上的设计讨论区。开源项目结构、管理模式和进化过程也是Carbon的核心方面。