时间:2022-10-09 18:07:25 | 浏览:2431
机器之心报道
编辑:杜伟、陈萍
目前,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/
机器之心报道编辑:杜伟、陈萍目前,Carbon编程语言正处于实验阶段。在编程语言的世界中,C++的地位举足轻重。在2022年5月的TIOBE编程语言排行榜中,C++位列第四。同样地,谷歌内部也在广泛使用C++。图源:https://hell
IT之家 7 月 20 日消息,谷歌工程师 Chandler Carruth 近日在 CppNorth 大会上宣布,Carbon 编程语言已在 GitHub 开源,该语言将是 C++ 的实验性继任者。谷歌此前已经创造了多种编程语言,包括 G
于是快马加鞭地赶出了下篇。 其实本来写完上篇后我脑袋里对下篇的框架已经有了大概的构思。但后来从文章的留言,读者微信群里的讨论,以及大家私下给平台小助手、给我发的微信留言中发现,“咦,原来大家最关心的问题跟我之前的设想还是有点儿出入哦~”。于
少儿编程热,需要冷思考(大家谈)在不少城市,少儿编程课外培训日渐火爆。很多人认为,作为数字世界的通用语言,学习编程能有效锻炼孩子的思维能力。但也有人提出问题:受理解力所限,幼儿园阶段就送孩子学编程是否符合教育规律?出于“莫输在起跑线上”的心
近日,在线少儿编程平台编程猫获得单轮4亿元人民币融资的消息,让少儿编程领域再次受到关注。同时,#少儿编程培训值得吗#的话题在微博上也吸引了700多万的阅读。近年来,少儿培训从英语热、奥数热,转移到“编程热”。有家长认为人工智能是趋势,希望孩
做了外贸网站的你一定也想把谷歌SEO做好,但是从哪些方面着手,可能很多人不知道,花费了高价钱做了一个外贸网站,网站On-page SEO却是烂的吓人( 还不知道On-page SEO可以先看一下“SEO相关专有名词解释” )。很多人都认为O
外媒Visualcapitalist网站统计了全球流量最大的网站排名,流量前十网站分别为:1、谷歌2、Youtube3、Facebook4、百度5、维基百科6、推特7、雅虎8、Pornhub9、Instagram10、Xvideos搜索引擎
选自Medium作者:Jaana Dogan机器之心编译参与:Panda、张倩「ACID 有很多含义」、「每个数据库具有不同的一致性和隔离性」、「嵌套事务可能有害」…… 这些都是谷歌云工程师 Jaana Dogan 曾经踩过的坑。在这篇文章
IT之家 7 月 27 日消息,谷歌工程师 Chandler Carruth 此前在 CppNorth 大会上宣布 Carbon 编程语言,该语言已在 GitHub 开源,并称其是 C++ 的实验性继任者。近日,外媒 devclass 询问
来源:AI科技大本营本文约1600字,建议阅读8分钟。“Java对于大型编程项目来说实在是复杂且冗长了,急需这样一款工具。”近日,Reddit 上有网友放出了一张疑似 Google 翻译添加了能让编程语言间互相转换的图片,立即引发数千名程序
本文首发于 Medium 网站,由 InfoQ 翻译并分享。在过去几年里,机器翻译领域发生了一场革命。利用深度学习构建的新翻译系统取代了语言学家利用统计学领域几十年的研究成果构建的旧系统。像 Google Translate 这样的热门翻译
9月份TOPDB Top Database Index排行榜出炉,TOPDB Top Database Index是根据数据库在谷歌上的搜索频率分析得出的,数据库被搜索的频率越大,表示数据库越受欢迎。9月份的TOPDB Top 数据库索引与
流量可能在某种情况下瞬间消失,一夜之间带走你努力多年的排名。所以采用多渠道引流是有必要的。通过下文的7个方法你可以从其他渠道获得自然流量。1、制作视频内容并通过YouTube和新闻发布进行推广。当你制作的视频内容具有很高的吸引力时,就可以为
谷歌开发了一种新的人工智能工具,可以从简单的文本提示中生成高清视频,加入了另一家大型科技公司 Meta,该公司上周发布了自己的文本到视频系统。Google Imagen 可以自主生成、或剪辑简短的高清视频。(谷歌人工智能摄)Meta的Mak
欲览更多环球财经资讯,请移步7×24小时实时财经新闻直播市场收盘:美债收益率攀升 美股连续第二日收跌10月20日美股成交前20:亚马逊在英国面临集体诉讼周四热门中概股多数上涨 知乎涨超4% 小鹏、理想涨超3%纽约黄金期货周四收高0.2%美国