取代C++?谷歌开源编程语言Carbon,网友评价太真实了

时间:2022-10-09 18:07:25 | 浏览:2213

机器之心报道编辑:杜伟、陈萍目前,Carbon编程语言正处于实验阶段。在编程语言的世界中,C++的地位举足轻重。在2022年5月的TIOBE编程语言排行榜中,C++位列第四。同样地,谷歌内部也在广泛使用C++。图源:https://hell

机器之心报道

编辑:杜伟、陈萍

目前,Carbon编程语言正处于实验阶段。

在编程语言的世界中,C++的地位举足轻重。在2022年5月的TIOBE编程语言排行榜中,C++位列第四。同样地,谷歌内部也在广泛使用C++。

图源:https://hellogithub.com/report/tiobe/

不过近日,在加拿大多伦多举办的 CPP North C++大会上,谷歌工程师 Chandler Carruth宣布谷歌内部正在打造一种新的编程语言——Carbon,并将它作为C++的继任者。目前,Carbon编程语言正处于实验阶段。

正如微软创建TypeScript来更新JavaScript、JetBrains创建Kotlin来弥补Java的缺点,Carbon将作为替代C++的语言,为开发人员提供一种全新的语言来解决内存安全和泛型等现代开发概念。

在谈到为何要替代 C++ 时,Carruth表示,C++作为长期以来构建性能关键应用的首选语言,它自身的很多问题困扰着现代开发人员。C++积累了数十年的技术负债,带有的很多过时实践都是其前身C语言的一部分。C++ 的维护者优先考虑向后兼容,以便继续支持广泛使用的项目,例如Linux及其包管理生态系统等。

此外,C++语言的发展也受到了官僚委员会程序的阻碍,该程序以标准化而非设计为导向。这种做法导致很难添加新功能。C++在很大程度上处于一个隔绝的开发过程,其中可能经过数年才会做出一些重要决定。

因此,Carruth希望通过更开放的社区主导环境来构建Carbon语言,并已开源。目前,该项目已在GitHub上获得了16.5k的Stars。

GitHub开源地址:https://github.com/carbon-language/carbon-lang

Carbon的设计理念和特性

谷歌希望在2022年年底推出Carbon的核心工作版本,即v0.1。Carbon将建立在现代编程原则的基础上,包含一个泛型系统,使开发人员不再需要为每个实例检查和再核对代码。

C++ 语言中亟需的一个特性是内存安全。内存访问 bug是安全漏洞的罪魁祸首之一,Carbon 设计人员将探索追踪未初始化状态的更好方法、设计支持动态边界检查的 API和惯用语,并构建全面的默认debug构建模式。随着时间的推移,设计人员还计划构建一个安全的Carbon子集。

Carbon语言将支持以下功能:

    性能关键型软件;

    软件和语言演变;

    易于阅读、理解和编写的代码;

    实用的安全和测试机制;

    快速且可扩展的开发;

    现代操作系统平台、硬件架构和环境;

    与现有C++代码的互操作性和迁移。

同时,Carbon语言的亮点包括如下:

    Introducer关键字和简单语法;

    函数输入参数为只读值;

    指针提供间接访问和变体;

    使用表达式命名类型;

    软件包为root命名空间;

    通过包名导入APIs;

    用显式对象参数来声明方法;

    单继承、默认使用最终类;

    强大且经过定义检查的泛型;

    类型显式地实现接口。
    Carbon设计团队将着手创建一个内置包管理器,这在C++中非常欠缺。此外,团队还计划编写一些将C++代码迁移到Carbon代码的工具。下图左为C++代码,右为Carbon编写的相同函数:

为何不大力发展Rust语言呢?

有人或许会问了:最近有专门为解决内存安全性能应用的需求而构建的Rust语言,为何不直接使用它呢?Carruth对此表示,如果Rust适合你,就继续使用。但是,将C++的生态系统转移到Rust非常困难。

相比之下,Carbon是建立在已有C++生态系统之上,适合那些已经拥有大量C++代码库的开发人员,这些库很难转换到Rust。

Carbon有望成为C++的「继任者」

计算机编程语言是程序设计最重要的工具,每个程序员都有自己熟悉的一套编程语言。

此前,谷歌也开源了编程语言。例如2006年谷歌开源Go语言,其目标是兼具Python 等动态语言的开发速度和C/C++等编译型语言的性能与安全性,短短几年,Go成为最热门语言之一,许多大公司用Go来开发自己的产品。与此同时,最初旨在替代 JavaScript 的 Dart 编程语言直到 Flutter 发布才成为主流。

这次谷歌内部新打造的编程语言Carbon,还处于实验性阶段,大家的评价如何呢?

有网友表示:C++对于特定的任务是好的,但现在看起来就像一个怪物,而现在Carbon看起来就很不错。

更有人表示Carbon有望成为C++的「继任者」:

不过也有人认为:Carbon底层是用C++实现的,一个用C++实现的编程语言,想要替代C++,说服力不够。不过预测又会有一批新程序员上岸Carbon。

还有网友想让Carbon与JavaScript进行一番比较,看看哪个更好:

几年之后,Carbon会不会又成为一种热门编程语言呢?
原文链接:
https://twitter.com/code_report

https://9to5google.com/2022/07/19/carbon-programming-language-google-cpp/
https://thenewstack.io/google-launches-carbon-an-experimental-replacement-for-c/

相关资讯

被网友称作“史上最爽职业”:酒店试睡员

到底要怎么睡?“酒店试睡员"在国外被称为"酒店品评家",要求应聘者具有敏锐观察力与感受力,热爱旅游,乐于分享所见所闻。酒店试睡员体验酒店的服务、环境、卫生、价格、餐饮等多个方面,比如床垫软硬、空调冷暖、网速快慢、下水道是否畅通、淋浴水流是否

90后美女博士当酒店试睡师,每天就是吃喝睡,网友:史上最爽职业

南京有位“大自然录音师”,陪伴网友“抱团”沉浸式入眠

现代快报讯(见习记者 史童歌 记者 任红娟)淅淅沥沥的雨水声、风吹树叶的沙沙声、篝火噼里啪啦的燃烧声……近几年,舒适放松的白噪音十分流行,陪伴很多人的睡前时光。在南京有位“大自然录音师”,每逢雨天便开车出门录制实景雨声视频,并且每晚不间断直

世界上最好的编程语言PHP和Facebook的感情经历

今天讲一段情史,是关于世界上最好的编程语言PHP和Facebook的感情经历。恋爱PHP能和Facebook谈恋爱,主要归功于创始人扎克伯格。小扎这个哈佛的学生,很不安分,鬼点子很多,很喜欢整一些快餐式的Web项目。而PHP的特点就是快速开

PHP、Java、Python、C、C++这几种编程语言都有什么特点或优点?

一、强类型和弱类型语言:C、 C++、 Java 、Python都是强类型的语言。PHP是弱类型的语言。强类型语言是一种强制类型定义的语言,即一旦某一个变量被定义类型,如果不经强制转换,那么它永远就是该数据类型。而弱类型语言是一种弱类型定义

铁打的Python连续3年第一,PHP跌出前十:IEEE编程语言排行榜出炉

乾明 发自 凹非寺 量子位 报道 | 公众号 QbitAIPython势头不减,依旧第一,而且进一步拉开了与其他语言的差距。这一结果,来自IEEE Spectrum2019年度编程语言排行榜。这已经是Python连续3年保持第一。在Pyth

C、C++、Java、JavaScript、PHP、Python分别用来开发什么?

首先,我们先普及一下编程语言的基础知识。用任何编程语言来开发程序,都是为了让计算机干活,比如编写一篇文章,下载一首MP3等,而计算机干活的CPU只认识机器的指令,所以,尽管不同的编程语言差异极大,最后都得“翻译”成CPU可以执行的机器指令。

最难学的编程语言:Java竟然不是第一名!

编程语言是开发者们代码工作的核心,也是许多开发者最爱讨论的话题。编程语言的选择对开发者和工具制造商都十分重要,前者需要保持最新和具备市场潜力的技能,后者则亟需确保他们能够提供最有用的 SDK。开发者经济分析公司 SlashData 曾发布了

「编程语言」PHP完全自学手册

PHP(外文名 Hypertext Preprocessor,中文名“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。关于PHP详细自学内容:(点击下方“了

什么是PHP编程语言?

你是否想了解PHP编程语言的一些知识背景?如果需要请继续往下读。​PHP起源概述PHP是一种通用脚本语言,在后端Web开发中最常用,还可以通过CLI(命令行界面)使用它,有时甚至可以将其打包成可执行文件。1994年,Rasmus Lerdo

友情链接

SEO域名抢注宝宝起名网妈妈知道币圈荆门新闻资讯网睫毛膏品牌网禧六福珠宝BB霜品牌网风再起时电影网株洲新闻头条网下午茶文化网茶道文化网会计学习网热水器品牌网郭姓氏取名网甄子丹影迷网林志颖歌迷网夏普电视评测网拉丁舞培训网
PHP编程知识网-php开源建站系统、PHP程序员网站开发、php编程工具、php菜鸟教程下载、PHP网络编程教学、php网络编程、php工程师、php菜鸟教程数据库、PHP网站开发、PHP精品源码网站、php程序员入门、php零基础入门教程、php源码搭建网站流程、php从入门到精通第2版、php开发简单网站、php制作网站实例、php网站开发实例教程源代码、php中文网破解版、php中文网。
php编程知识 yoceo.cn ©2022-2028版权所有