Skip to content

Commit 3dd3522

Browse files
authored
Merge pull request #1771 from tbodt/patch-1
typo
2 parents cfb3221 + 4e5e8d3 commit 3dd3522

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

content/what-do-people-love-about-rust.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -192,7 +192,7 @@ This "goldilocks" framing helps people recognize where they are and course-corre
192192

193193
We recommend **doubling down on extensibility** as a core strategy. Rust's extensibility — traits, macros, operator overloading — has been key to its versatility. But that extensibility is currently concentrated in certain areas: the type system and early-stage proc macros. We should expand it to cover **supportive interfaces** (better diagnostics and guidance from crates) and **compilation workflow** (letting crates integrate at more stages of the build process).
194194

195-
Rust's extensibility is a big part of how Rust achieves versatility, and that versatility is a big part of what people love about Rust. Leveraging mechanisms like proc macros, the trait system, and the borrow checker, Rust crates are able to expose high-level, elegant interfaces that compile down to efficiemt machine code. At its best, it can feel a bit like magic.
195+
Rust's extensibility is a big part of how Rust achieves versatility, and that versatility is a big part of what people love about Rust. Leveraging mechanisms like proc macros, the trait system, and the borrow checker, Rust crates are able to expose high-level, elegant interfaces that compile down to efficient machine code. At its best, it can feel a bit like magic.
196196

197197
Unfortunately, while Rust gives crates good tools for building safe, efficient abstractions, we don't provide tools to enable **supportive** ones. Within builtin Rust language concepts, we have worked hard to create effective error messages that help steer users to success; we ship the compiler with lints that catch common mistakes or enforce important conventions. But crates benefit from none of this. RFCs like [RFC #3368](https://rust-lang.github.io/rfcs/3368-diagnostic-attribute-namespace.html), which introduced the diagnostic namespace and `#[diagnostic::on_unimplemented]`, Rust has already begun moving in this direction. We should continue and look for opportunities to go further, particularly for proc-macros which often create DSL-like interfaces.
198198

@@ -216,4 +216,4 @@ To sum up the main points in this post:
216216
* We make three recommendations to help Rust continue to scale across domains and usage levels
217217
* Enumerate and describe Rust's design goals and integrate them into our processes, helping to ensure they are observed by future language designers and the broader ecosystem.
218218
* Double down on extensibility, introducing the ability for crates to influence the develop experience and the compilation pipeline.
219-
* Help users to navigate the crates.io ecosystem and enable smoother interop
219+
* Help users to navigate the crates.io ecosystem and enable smoother interop

0 commit comments

Comments
 (0)