近日,Google宣布了Carbon语言,国内外相关技术媒体论坛争相关注,甚至在 Rust 群里也开启了热烈讨论。
正如我们熟知的,C++是C语言的继承者,Kotlin是Java的继承者,Swift是Objective-C的继承者…….那么,C++的继承者会是哪一个?Rust 或者是这个新出现的 Carbon?
有人说Carbon有许多与Rust相同的目标,如帮助开发者创建“性能关键型软件”,那么Carbon想要解决的问题,Rust能解决吗?
1.Carbon想解决有长期价值的大型项目所依赖的Cpp生态的可持续发展问题。而面对这个问题,Rust不能解决。Rust只是面向没有特别重的历史包袱的新的领域的挑战。如果你能用Rust,就不需要考虑用Carbon。
2.Carbon 通过现代化的优秀设计来解决Cpp 生态的可持续发展问题,其中包括通过包容、热情和务实的文化促进健康和充满活力的社区、面向性能设计、面向性能关键型软件、提供实用的安全和测试机制、易于阅读、理解和编写的代码和现有C++代码的无缝零开销互操作性和自动化移植。
Rust给了Carbon 设计太多灵感,也追求开放社区、性能和安全。其安全目标和级别是和Rust对齐的,但其具体实现策略是与Rust不同的,Carbon不会直接模仿Rust借用检查机制,而是为了降低使用成本而考虑其他方式,且还考虑运行时检查机制。