You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Jul 14, 2018. It is now read-only.
As part of the effort to lower Rust's learning curve, we are interested in pursuing a number of language improvements that will make Rust both nicer to use and easier to learn. The goal is to enhance productivity without sacrificing Rust's other core values. See the README for more details.
A kind of manifesto for this work was written up on the main blog.
Status
There are a lot of ideas in flight! The lang team has been focused on writing RFCs for the biggest changes; there are lots of opportunities to help either there, or with more narrow RFCs. If you are interested in the ideas listed below, please contact @aturon or others on the team to hook you up with a mentor for RFC writing!
The potential improvements are organized by broad areas of Rust:
Point of contact
@nikomatsakis @aturon @withoutboats
Overview
As part of the effort to lower Rust's learning curve, we are interested in pursuing a number of language improvements that will make Rust both nicer to use and easier to learn. The goal is to enhance productivity without sacrificing Rust's other core values. See the README for more details.
A kind of manifesto for this work was written up on the main blog.
Status
There are a lot of ideas in flight! The lang team has been focused on writing RFCs for the biggest changes; there are lots of opportunities to help either there, or with more narrow RFCs. If you are interested in the ideas listed below, please contact @aturon or others on the team to hook you up with a mentor for RFC writing!
The potential improvements are organized by broad areas of Rust:
Ownership/borrowing
RFCs
Sketches
AsRefcoercions) (@aturon)Copytypes (@aturon)Traits
RFCs
impl Traitstabilization and expansion (@aturon)impl Traitwork, e.g.impl Traitin traits (@aturon, @cramertj, @eddyb, @withoutboats)T: SomeTraitSketches
dyn Traitsyntax for trait objects (@nikomatsakis, @aturon)Module and privacy system
Landed
pub(restricted)is stable!RFCs
extern crateto take a list (@withoutboats)Sketches
Error handling
RFCs
?to work with more types (@nikomatsakis)?inmain(@nikomatsakis)Resultwhen leaving a block (@scottmcm, @nikomatsakis, @aturon)Try<Ok=()>: Add the()→Result<(), _>coercion rule, for removingOk(())everywhere. rfcs#2120Primitive types/core traits
Sketches
String(@aturon)PartialEq/PartialOrd(@aturon)#[derive(Data)]Type annotations/verbosity
RFCs
const/staticdeclarations (@schuster)Sketches
matcharms::infoo::<u32>(blah), in at least the single-argument caseFFI
Landed
Other
RFCs
async/awaitnotation built on top; we are considering landing that experimentally in the compiler.More ideas
returnand closuresIdeas that didn't make it
else match