文学起点网
当前位置: 首页 文学百科

github怎么变成token(C继任者火到GitHub趋势榜一)

时间:2023-07-23 作者: 小编 阅读量: 1 栏目名: 文学百科

Alex发自凹非寺量子位|公众号QbitAI今年的CPPNorthC大会上,谷歌宣布了一门新的编程语言Carbon,并称其将是“C的继任者”。此外,C语言的发展也受到了官僚委员会管理程序的阻碍,该程序以标准化而非设计为导向,这种做法导致很难给其添加新功能。不过至于安全问题,Carbon并没有一开始就建立内存安全系统。“Carbon是为有大量C库者准备的”卡鲁斯在CPP会议上对此回应称,C和Rust之间的衔接性不好,要将C的生态系统转移到Rust非常困难。

Alex 发自 凹非寺

量子位 | 公众号 QbitAI

今年的CPP North C大会上,谷歌宣布了一门新的编程语言Carbon,并称其将是“C的继任者”

谷歌将其在GitHub上开源。虽然这个语言目前还处于实验阶段,但还是很快吸了引众多程序员前来围观,还一度登上了GitHub趋势榜第一,现已收获标星21.3k。

对于谷歌方开发者称Carbon是C的继承者一事,有国外媒体询问了C之父Bjarne Stroustrup的看法,老爷子表示:

这些年总是有新的语言试图成为C的继承者,我欢迎对编程语言和编程风格进行实验;

Carbon太新且规范不足,我无法真正做出有意义的技术评论。而通常在不开发全新语言规则、库和管理方案的情况下,很难提供C的替代方案。

所以谷歌团队为什么非要搞一个C“替代版”而不是继续完善现有的C?毕竟他们自己内部都在广泛使用这个语言。

为什么不去升级C?

对此,带领团队开发Carbon的谷歌工程师钱德勒·卡鲁斯(Chandler Carruth)解释称,C至今已有40岁了,其自身的很多问题困扰着现在的开发人员。

数十年来,C已积累了许多技术负债。其维护者优先考虑向后兼容,以便继续支持广泛使用的项目,但这样容易导致代码量巨大。

而且C虽然有开源的编译器(如gcc),但也有不少闭源编译器,其中的某些功能可能要过很久才能改善升级。

此外,C语言的发展也受到了官僚委员会管理程序的阻碍,该程序以标准化而非设计为导向,这种做法导致很难给其添加新功能。

解决这些问题的最佳方法是避免直接继承C或C的“遗产”,而是从语言基础开始,例如:现代泛型系统、模块化代码组织、一致的简单语法等。

卡鲁斯也在CPP大会上提到,该语言并不是为了和C未来改进版本竞争,而是——

“探索用C做不到的事”

正如微软创建TypeScript来更新JavaScript那样,Carbon作为一种在C基础上开发的新语言,将为更多开发者解决内存安全和泛型等问题,来弥补C的不足。

目前Carbon语言的亮点包括:

  • Introducer关键字和简单语法;
  • 函数输入参数为只读值;
  • 指针提供间接访问和变体;
  • 使用表达式命名类型;
  • 通过包名导入APIs;
  • 强大且经过定义检查的泛型
  • ......

此外,谷歌正在继续开发Carbon以支持以下功能:

  • 性能关键型软件;
  • 软件和语言的演变;
  • 易于阅读、理解和编写的代码;
  • 实用的安全和测试机制;
  • 快速且可扩展的开发;
  • 现代操作系统平台、硬件架构和环境;
  • 与现有C代码的互操作性和迁移性。

开发团队还将创建一个内置包管理器,这是C中非常缺乏的。

举个简单的例子:用C代码和Carbon代码分别计算半径为1和2的两个圆面积之和。二者对比如图:

△图源:GitHub;左为C代码,右为Carbon代码

下图展示了Carbon和C互通性。程序员可以在Carbon上调用C库、方法和函数,而不需要额外的开销,反之亦然。

不过至于安全问题,Carbon并没有一开始就建立内存安全系统。

卡鲁斯介绍说,由于C内存安全性很差,所以Carbon的研发起点很低,该项目优先考虑的是迁移而不是安全;希望以后Carbon至少可以和Go或Swift一样安全。

事实上,在Carbon之前,Mozilla(就是开发火狐那个)于2015年就发布了一个也标榜自己为“C继承者”的语言:Rust,而且这个Rust很注重内存安全性。

那为什么不大力发展Rust呢?

“Carbon是为有大量C库者准备的”

卡鲁斯在CPP会议上对此回应称,C和Rust之间的衔接性不好,要将C的生态系统转移到Rust非常困难。

对于那些已经拥有大量C代码库的开发者来说,要把自己之前的东西搬到Rust编辑器上就很麻烦了。

而Carbon被设计成一种C的后继语言,它以后将实现和C无缝连接,并具备与C的双向互操作性,这对于有大量C代码库者非常友好。

对于那些没有这种“烦恼”的程序员们,卡鲁斯表示,想用Rust的话就继续用好了。

网友纷纷围观

前来围观Carbon的一众网友中,有人表示支持谷歌开发这个新语言:

若能在这里直接调用C语言库的低层级Stuff函数,而不需在开头加行extern “C”,是很了不起的。

有人认同其简化语言和提升安全性的目标,但他觉得要在现有的语言中改进内存安全并不太容易,现有的C特征和API很可能会约束这个新语言的发展。

当然也有网友并不看好Carbon,认为谷歌有弃用创新软件的习惯,这个听起来很炸的项目可能会半途而废。

还有人提出:Carbon这个用C实现的语言居然想要替代C?

有网友觉得,现在Rust正在逐步成为低级程序语言,Carbon和Rust有不少相似之处,仅凭“让C迁移更容易”并没有什么卖点。

此外,Hacker News上还有网友想到了D语言(DLang),这个语言和C的互通性很不错。而且D语言也有Carbon的不少功能,包括和C相互调用、减少额外的开销等。

可惜由于D语言的初期定位不够清晰,一度试图涵盖Java和C的功能,导致它比较小众。

对这个号称“C继承者”的Carbon,你怎么看?欢迎在评论区留言~

传送门:http://github.com/carbon-language/carbon-lang参考链接:[1]http://devclass.com/2022/07/25/c-inventor-stroustrup-says-googles-carbon-too-new-and-under-specified-for-meaningful-technical-comment/[2]http://www.youtube.com/watch?v=omrY53kbVoA[3]http://news.ycombinator.com/item?id=32151609[4] http://www.reddit.com/r/programming/comments/w2thvo/carbon_an_experimental_c_successor_language/

— 完 —

量子位 QbitAI · 头条号签约

关注我们,第一时间获知前沿科技动态

    推荐阅读
  • 苏州旅游攻略景点必去(苏州旅游必去景点有哪些)

    位于苏州市东北街一百七十八号,始建于明朝正德年间。虎丘是AAAAA级景区及全国文明单位,首批十佳文明风景旅游区示范点。中午,周庄最为欢闹,游人穿梭熙熙攘攘,船儿来回摇摇荡荡,各地的游客与热情的商铺融为一体,热闹非凡,安静的古镇着实多了些欢闹的气息。狮子林为苏州四大名园之一,位于苏州市市城东北园林路。

  • 买的玉米种子是瘪的(去年买的玉米种子剩了很多)

    去年买的陈玉米种子建议不要用针对去年的陈玉米种子,大多情况下不建议再次使用,会影响到玉米后期的生长和产量情况。陈年的因为保管的问题,可能会出现很多因素影响玉米的出苗率或者后期的生长。陈玉米种子隔了一年后再种植,种子自身水分含量降低,水分降低严重的情况下,影响播种的效率和玉米的后期生长,由于活性降低,即使能出芽,也不一定能出苗。

  • 173.2亿!国庆消费火爆 国庆消费市场

    今年国庆、重阳两节叠加,全省消费市场呈现平衡较快增长态势,服装、家电、汽车等商品消费亮点突出,大众餐饮、旅行休闲、文体娱乐等主要服务消费备受青睐。根据商务部业务统一平台生存必需品监测系统显示,国庆黄金周期间,全省生存必需品市场供应充沛,价格总体平衡。除了买买买,国庆还是婚庆、团圆、会友高峰,各地亲友聚餐、婚寿宴等大众化餐饮生意兴隆。

  • 吴承恩是怎么写出的西游记(吴承恩怎么写出的西游记)

    吴承恩怎么写出的西游记诸葛长青:吴承恩写西游记诸葛长青:吴承恩怎么写出的《西游记》西游记,广泛流传西游记,作者吴承恩西游记,包含了儒释道大智慧那么,吴承恩是怎么写出的《西游记》呢?诸葛长青把自己对吴承恩写《西游记》,研究成。

  • 李逵扮演者(大家一起来看看吧)

    我们一起去了解并探讨一下这个问题吧!李逵扮演者赵小锐的李逵应该算是很多人印象当中的经典所在了,他的李逵也是很粗犷,但是这种粗犷当中却带着细腻,也是因为这个角色,他开始受到了不少的观众的关注和喜爱。其实之前的他也有出演过一些电视剧的,但是可惜的是一直都没能够真正的红起来,是李逵这个角色,让他一夜成名爆火了。

  • 汽车空间大小怎么看轴距(什么因素会影响车内空间)

    大众速腾,长度4655mm,轴距2651mm。看外观就明白了,因为宝马320i是后驱车,发动机采用纵置布局;而大众速腾是前驱车,发动机采用横置布局。而且由于发动机纵置,后驱设计,对于车内空间侵占较为严重,所以宝马320的长轴距实际上对于空间的帮助是“虚高”的。前面我们就提到了,宝马3系采用了后驱,大众速腾采用了前驱。回到我们的主题,通常来说,麦弗逊与扭力梁对于车辆空间的侵占是最小的,而多连杆和双叉臂对于车辆空间侵占是要更大的。

  • 湖南省医保局2015年工作思路与安排 湖南省医疗保障局领导班子组成人员

    督促指导各统筹地区核实提高缴费基数,强化保险费足额征收。继续加强工伤认定参与,把好工伤入口关。认真核实、积极处理群众举报问题,始终保持高压态势。加强生育医疗服务管理,规范生育津贴发放。二是启动实施工伤保险信息系统改造升级,改进工伤职工异地就医联网结算,方便工伤职工救治。三是加强财务、业务数据清理,提高数据质量;通报全省“三险”基金运行分析,指导市州加强基金运行风险管控。

  • 民国最渣四大渣男(民国著名4大渣男)

    当时很多文人在接受自由恋爱的思想时,家中已经有了父母为之安排的妻子。郁达夫一生有过三位妻子,一位同居情人。郁达夫后来还是和王映霞离婚,1940年在新加坡认识了比他小20岁的播音员李莜英,两人很快就同居了。第二任妻子佐藤富子,是个日本女人,为了和郭沫若在一起,不仅改名为“郭安娜”,还和父母断绝了关系。1937年,郭沫若抛弃妻子回国,和女明星于立群同居,两人于2年后再重庆结婚。

  • 电脑怎么连打印机教程(教会你快速学会电脑如何连接打印机的安装使用方法)

    最近很多网友都在私信给小编,小编也无法一一回复,有些问题也无法简约介绍,所以只能在头条文章内与大家共享。

  • 爱吃鸡蛋的注意了这3种鸡蛋不能买(这些鸡蛋没你想的那么好)

    营养均衡的孩子没必要补这种元素;真正缺乏硒,靠富硒蛋补,根本起不了多大作用。这类蛋再好,也别给孩子吃那就是全生或半熟的蛋,比如溏心蛋。一般溏心蛋的加热时间短,不能完全杀死细菌,生蛋液根本没有处理细菌,对于抵抗力低、易感染的宝宝来说,非常容易被细菌感染。