前
言
/ 2022.7.22
近日,在CppNorth开发者大会上,谷歌工程师Chandler Carruth宣布了名为“Carbon”的全新开发语言,目前已在GitHub开源,并号称它将是C 的实验性继任者。
01
Carbon特点优势
正如我们熟知的,C 是 C 语言的继承者,TypeScript 是 JavaScript 的继承者,Swift 是 Objective-C 的继承者,而 Kotlin 又是 Java 的继承者 。
双向互操作性
那么,C 的继承者会是哪一个?Rust 或者是这个新出现的 Carbon?
谷歌工程师Chandler Carruth 将Carbon与 Rust 进行了对比,称 Rust 与 C 并不具备“双向互操作性”,因此很难稳定迁移。
而从 Carbon 的 GitHub 页面也能够看出,谷歌在开发该语言的时候,就将尽可能轻松地从 C 迁移到 Carbon 作为了核心目标。
✦
C 与Carbon
现代化、易发展
虽然C 现在依旧是有着主导性地位的语言,并有着庞大的代码库,但由于积累了几十年的技术债务,企图逐步改进 C 是非常困难的。
这既是由于技术债务本身,也是由于其进化过程中的挑战。
而 Carbon 则不同,它在继承了 C 现有特性与生态的基础上,足够年轻,也足够“现代化”,拥有更为广阔的优化空间,潜力更大。也正是在这种情况下, Carbon 才应运而生。
02
Carbon发展目标
速度快,可与 C 一起使用
性能与使用 LLVM 的 C 相匹配,具有对位和地址的低级访问,从 " 遗产 " 到模板,实现与现有的 C 代码互操作;快速和可扩展的构建,与现有的 C 构建系统一起工作。
现代化并能不断发展
自身具备坚实的语言基础,更易于学习 Carbon,特别是对于已经使用过 C 的人。
在后续发展中注重简单的、基于工具的 Carbon 版本之间的升级,以及更安全的基本原理,逐步实现内存安全子集的途径。
打造受欢迎的开源社区
尽管 Carbon 是在谷歌内部开始的,但该团队愿意将其开源,为的是使其在未来能够获得成功,Carbon 需要成为一个 " 独立的并且由社区驱动的项目 ",而不仅仅是为谷歌自用。
03
替代 C 是否现实?
根据大雄在网络上收集到的评论意见,极端的正反方向都有,有不少开发者们依然保持期待,也有不少开发者对此持强烈怀疑态度。
●
●
●
我绝对欢迎一个更容易阅读和理解的 C 的替代品,这将是对世界的一个好处。
用 C 的商业化产品为了稳定,更新都很保守,Carbon 很难发展。
既然是开源,怎么说也得浅浅支持一下吧。
天天有人做底层开发语言想要替换 C ,结果从1979年现在,没一个打得过的。
这语言充斥着太多“为了不同而不同”的地方了,不看好,但思路还可以,保持观望。
●
●
●
确实,在现阶段,Carbon 想要继承甚至于取代 C 这一语言还过于遥远,但大雄认为,作为一种新生的开发语言,它有很大可能性会带来全新的开发生态和技术。
所以,让我们一起等待或者期待 Carbon 后期的使用反馈吧。
END
阅读原文
了解老九学堂暑期线下班详情