惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园_首页
H
Help Net Security
N
Netflix TechBlog - Medium
Apple Machine Learning Research
Apple Machine Learning Research
P
Proofpoint News Feed
A
About on SuperTechFans
V
V2EX
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
宝玉的分享
宝玉的分享
aimingoo的专栏
aimingoo的专栏
F
Fortinet All Blogs
博客园 - 【当耐特】
Microsoft Security Blog
Microsoft Security Blog
Martin Fowler
Martin Fowler
I
InfoQ
Google DeepMind News
Google DeepMind News
人人都是产品经理
人人都是产品经理
Engineering at Meta
Engineering at Meta
腾讯CDC
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
B
Blog RSS Feed
U
Unit 42
The Cloudflare Blog
Y
Y Combinator Blog

Rust Blog

Security Advisory for Cargo (CVE-2026-5223) | Rust Blog Security Advisory for Cargo (CVE-2026-5222) | Rust Blog Project goals update — April 2026 (end of 2025H2) | Rust Blog Rust is participating in Outreachy | Rust Blog Raising the baseline for the `nvptx64-nvidia-cuda` target | Rust Blog Announcing Google Summer of Code 2026 selected projects | Rust Blog Announcing Rust 1.95.0 | Rust Blog docs.rs: building fewer targets by default | Rust Blog Changes to WebAssembly targets and handling undefined symbols | Rust Blog Announcing Rust 1.94.1 | Rust Blog Security advisory for Cargo | Rust Blog What we heard about Rust's challenges | Rust Blog Call for Testing: Build Dir Layout v2 | Rust Blog Announcing rustup 1.29.0 | Rust Blog Announcing Rust 1.94.0 | Rust Blog 2025 State of Rust Survey Results | Rust Blog Rust debugging survey 2026 | Rust Blog Update on the October 15, 2018 incident on crates.io Announcing Rust 1.29.2 Announcing Rust 1.29 Announcing Rust 1.28 What is Rust 2018? Announcing Rust 1.27.2 Announcing Rust 1.27.1 Security Advisory for rustdoc Announcing Rust 1.27 Announcing Rust 1.26.2 Announcing Rust 1.26.1 Rust turns three Announcing Rust 1.26
Lang team design meeting: well-formedness and type aliase...
Niko Matsakis on behalf of the lang team · 2020-07-29 · via Rust Blog

Hello! Did you know that the lang team now has regular design meetings? We use these meetings to dig deeper into the output of active project groups. After the meeting, we typically post a recording to YouTube as well as some minutes into the lang-team repository. I wanted to write a quick update listing out some of the meetings we've had recently as well as some of our upcoming meetings.

This blog post is about the meeting we held on 2020-07-29. We discussed the idea of trying to enforce the "well-formedness" rules for type aliases, as has been floated on and off over the years.

The context is that the compiler's current rules expand type aliases as if they were a kind of macro, which means that we don't wind up enforcing many sorts of rules about them.

For example, the following type alias definition is legal even though it would be an error to ever use it:

struct MyType<T: Display> { t: T }

// This alias, perhaps, should err, as `Vec<u32>: Display`
// does not hold:
type MyAlias = MyType<Vec<u32>>;

For more information, check out the minutes from the meeting or watch the recording. We covered a number of examples of what goes wrong, as well as various possible "endstates" that we might want to reach (for example, there is an argument that the above example should be accepted after all, perhaps with a warning).

The conclusion during the meeting was that we would not put a lot of energy into type aliases at this time, and in particular we wouldn't aim for any Edition-related migrations and hard-errors, but we would accept PRs that introduce warnings for type alias definitions that are always an error to use. (Like any conclusion that happens in a meeting, it may be revised if we encounter new evidence that changes our minds.)