2025 AI基础设施风向标,不看必后悔!#AI基础设施峰会 了解详情
写点什么

Rust 1.12 带来中级 IR

  • 2016-10-19
  • 本文字数:862 字

    阅读完需:约 3 分钟

Rust 核心团队最近发布了稳定版的Rust 1.12,这是自从1.0 版发布后最重要的一次更新。此次发布的新版提供了用户翘首以待的中级IR(Mid-Level IR,MIR),为该编译器未来的进一步优化铺平了道路。

在博客文章 MIR 简介中,Mozilla 公司的 Niko Matsakis 称:

MIR 介于现有的 HIR(“高级 IR”,近似于一种抽象语法树)和 LLVM (“低级 IR”)之间。以前如果遇到某个相当大规模的操作步骤,编译器会在“翻译”过程中从业已成熟的 Rust 转换为类似于机器代码的 LLVM,但现在这一工作可以通过两个阶段完成,而经过大幅简化后的 Rust,即 MIR 恰好居于这两个阶段之间。

Rust 的开发者 Steve Klabnik简化后的翻译过程使得我们有机会直接对 MIR 执行各种新的优化。

尽管 Rust 团队认为 MIR 并未提供任何“用户可见”的内容,但 Matsakis 提到可以大幅改进编译速度,同时可支持增量编译,此外执行速度也更快,可支持更准确的类型检查。

最新的稳定版 Rust 也提供了大量用户可见的更新,包括全新格式的 Rustc 错误信息,如下所示:

该团队解释说:

[新的错误信息格式] 可以向开发者呈现有关为什么出错的大量内部知识,该版本会以用户代码为中心,并会高亮显示与错误有关的代码内容,同时可以通过注解描述具体的错误。

在新的错误信息格式中,我们会在显示错误信息的同时显示与该错误关系最紧密的代码内容。

最初这种形式的错误信息是为了帮助用户理解借用检查(Borrow-checking)错误,但我们发现这种格式也可以更广泛地用于各种类型的错误。如果想详细了解这种设计,请参考之前针对这一话题发布的博客文章

Mozilla 工程师 Jonathan Turner 在博客文章错误信息塑型时代即将到来中着重介绍了相关的改进,并称通过使用开发者编写的代码作为上下文,Rust 可以帮助用户更轻松地概括了解问题的所在。

1.12 版还有其他改进,例如 Cargo 的工作空间功能已经可以让一组 Rust 包共享同一个Cargo.lock文件,这样开发者便可以更容易地在一个版本中保持共享的依存性。

Rust 1.12 办完整的发布说明已公布至 GitHub ,新版可从这里下载。

查看**** 英文原文: Rust 1.12 Brings Mid-Level IR

2016-10-19 19:002439
用户头像

发布了 283 篇内容, 共 112.4 次阅读, 收获喜欢 62 次。

关注

评论

发布
暂无评论
发现更多内容

淘宝/天猫商品详情API接口在电商数据同步与实时更新中的实践

技术冰糖葫芦

API Explorer api 货币化 API 文档 pinduoduo API

软件测试学习笔记丨Jenkins job配置

测试人

软件测试

美航通过 NocoBase 节省了 70% 的物流系统升级成本

NocoBase

开源 系统设计 低代码 无代码开发

线上交流会预告!和鲸科技社区合伙人唐铭分享“学科+AI”课程搭建思路

ModelWhale

AI 直播 教学 分享会

数据分析新贵——DuckDB入门

三七互娱后端技术团队

数据分析 duckdb

Golang 中 能否将 slice 作为 map 的 key?

伤感汤姆布利柏

观测云加入华为云「新加坡云联盟」,引领亚太创新潮流

观测云

监控

什么是企业全历史行为数据?为什么它是ToB大客户营销的最佳助手?

客户在哪儿AI

ToB营销 ToB获客 大客户营销 企业全历史行为数据

Adobe Illustrator 和 Photoshop 迎来新 AI 功能;马斯克将训练全球最强 AI丨 RTE 开发者日报

声网

CX1概念车空气动力学设计,打造典型“美式肌肉车”风格

Altair RapidMiner

人工智能 汽车 仿真 车企数字化 altair

Claude 3.5、GPT-4o最新系统指令大揭秘!

蓉蓉

Claude gpt4o

Windows10+vs 2017中创建WEB API教程

幂简集成

Windows 10 API web api

Oracle向YashanDB迁移的丝滑体验

YashanDB

yashandb 崖山数据库 崖山DB

云启AI,数领未来|Zilliz 华北地区高层闭门会圆满结束

Zilliz

程序员 AI Milvus Zilliz 向量数据库

Kmesh v0.4发布!迈向大规模 Sidecarless 服务网格

华为云开发者联盟

云计算 云原生 华为云开发者联盟 企业号2024年7月PK榜

NFTScan 浏览器现已支持 .mint 域名搜索功能!

NFT Research

blockchain NFT NFT\

37GAMES Nova(AI-CodeReview)介绍

三七互娱后端技术团队

AI CodeReview

Gartner报告:腾讯云大数据助力企业实现 AI 原生应用落地

腾讯云大数据

腾讯云

Rust 1.12带来中级IR_开源_James Chesters_InfoQ精选文章