当前位置:网站首页>GCC Rust获批将被纳入主线代码库,或将于GCC 13中与大家见面
GCC Rust获批将被纳入主线代码库,或将于GCC 13中与大家见面
2022-07-31 01:29:00 【万里长江雪】
整理 | 彭慧中 责编 | 屠敏
出品 | CSDN(ID:CSDNnews)
GCC(GNU Compiler Collection,简称为GCC)指导委员会已经批准了 GCC Rust 前端,该前端由 GNU 编译器套裝提供 Rust 编程语言支持。GCC 指导委员会宣布,Rust 前端“GCC Rust”适合被纳入 GCC 主线代码库,并且可能会在明年的 GCC 13 发布之前被合并到主线当中。
GCC Rust的茁壮成长
=================
GCC Front-End For Rust(也称为 GCC Rust)是 Rust 语言在 GCC 之上的一个完整替代性实现,目标是成为 GNU 工具链的上游。官方的 Rust 编译器实现是基于 LLVM 的,而 GCC Rust 是一个前端项目,与 LLVM 不同的是该编译器将获得对所有 GCC 内部中端优化通道的完全访问权。与 GCC 的紧密结合的项目往往能够从 GCC 插件中受益。当然 GCC 也会带来对更多目标架构的支持,基于 GCC 的 Rust 编译器将使 GCC Rust 在新的平台上更加容易启动。
在这个项目创立时,Rust 还处于 0.9 版本,随着 Rust 语言已经足够稳定,创建替代性编译器的绝佳时机已然到来。从 2020 年 11 月开始,开发者 Philip Herron 就已全职从事 GCC Rust 的开发工作,在他和整个社区的共同努力下,GCC Rust 正逐渐进入主线。
该项目仍处于早期阶段,目标是率先实现编译官方的 Rust 测试套件,社区希望在 GCC 13 中对 Rust 编程语言至少有“测试”级别的支持,而 GCC 13 将在明年 4 月左右作为稳定版发布。
Rust 的设计准则为 “安全、并发、实用“,在确保性能和原生编译语言一样的同时,能够实现内存安全。这样的特性也促使如今有越来越多的公司开始使用 Rust 编程语言,支持 Rust 项目。Rust for Linux 也有望在 Linux 5.20 中实现。
开发者们的呼声
消息一经发出便引发了 400 多位开发者在 Haker News 上的热烈讨论,很多开发者都欢天喜地的庆祝这一喜讯的到来。
一名开发者表示:“这真是太好了!GCC 对 Rust 的支持使得 Rust 打开了更多的平台,实现更多的目标,以及更容易与围绕 CGG 构建的各种通用嵌入式工具链集成的机会。而且 GCC 是自由软件,这对于那些关心它的人来说很重要。”
图源Haker News
然而也有一些开发者对此抱有疑虑:“为编程语言配备多个编译器的好处是什么?有没有这样的情况:GCC 编译的 Rust 程序会做一些 LLVM 不能做的事情?这不会导致 Rust 生态系统的分裂吗?”
图源Haker News
这样疑虑也被一众开发者争相解答。一名开发者表示:“1. GCC比LLVM有更多的后端。2. 一般来说,竞争是好事。3. 预计这将引发GCC和rustc(Rust 编程语言的编译器)之间的不一致;因为Rust并没有一个真正的规范。这将迫使双方讨论并解决这些问题。”
图源Haker News
另一名开发者也回应道:”一个好处是,它迫使语言阐明标准,而不是由实现来定义功能集。标准往往会给语言带来稳定性和持久性,同时也使编写新的编译器成为可能,并使其更加可移植。“
图源Haker News
总的来说,GCC Rust 的成长承载了诸多的期待,到明年 4 月份左右,或许就能于 GCC 13 中与其相见,那么各位开发者们,你们如何看待 GCC Rust 呢?
参考链接:https://gcc.gnu.org/pipermail/gcc/2022-July/239057.html
《新程序员001-004》已全面上市,欢迎扫描下方二维码或点击进入立即订阅,即可畅享电子书及精美纸质书
先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦
边栏推荐
猜你喜欢
随机推荐
华为“天才少年”稚晖君又出新作,从零开始造“客制化”智能键盘
"Real" emotions dictionary based on the text sentiment analysis and LDA theme analysis
VSCode插件:嵌套注释
ROS2系列知识(3):环境配置
MySql data recovery method personal summary
斩获BAT、TMD技术专家Offer,我都经历了什么?
tensorflow与GPU版本对应安装问题
ROS Action通信
The level of ShardingSphere depots in actual combat (4)
蓝牙mesh系统开发三 Ble Mesh 配网器 Provisioner
TiDB 在长银五八消费金融核心系统适配经验分享
link与@import的区别
Teach you how to configure Jenkins automated email notifications
Sping.事务的传播特性
【flask入门系列】Flask-SQLAlchemy的使用
prometheus 监控概述
九州云入选“可信云最新评估体系及2022年通过评估企业名单”
聚簇索引和非聚簇索引到底有什么区别
TiDB 在多点数字化零售场景下的应用
Why use high-defense CDN when financial, government and enterprises are attacked?