Paul Krill
Editor at Large

Rust roadmap: The new features planned for Rust 2018

news
Jun 26, 20183 mins

The Epoch release is likely to ship in September, and keep “unstable” features separate from the Rust 2018 production version

rust king iron bronze crown royal queen
Credit: Gratisography

The Rust language is on track for several key new capabilities this year. A draft roadmap for the Mozilla-sponsored language would polish and stabilize all existing features, including impl Trait, macros 2.0, SIMD, generators, custom registries in the Cargo package manager, and nonlexical lifetimes, as well as revamp modules. And tools such as the Rust Language Server (RLS), the rustfmt code formatter, libraries, and documentation would be brought to 1.0 release status. The Rust 2018 release, aka Epoch, might also have build-system integration improvements.

Where to download Rust

Rust 2018 will likely ship in September, according Mozilla’s draft roadmap. An alpha build is available now.

You can run rustup install nightly to get the nightly distribution, which includes the current alpha release. Developers already on the nightly channel do not need to update the compiler.

New features expected in Rust in 2018

Because the intent is to have only stable features in Rust 2018, Mozilla may deliver other new capabilities separately from Rust 2018. Such “unstable” features could include outside Aconst generics, generic associated types, and specialization, permitting multiple impl blocks to apply to the same trait as long as one of the blocks is more specific than the other.

Mozilla’s work this year on the Rust compiler is set complete language features and make improvements to compile times and error messages. Building the rustfix tool, to read and apply messages from rustc and third-party lint tools, is also a goal. Rust’s library ecosystem, meanwhile, would get investments in quality, discoverability, and domain-specific content.

The draft roadmap focuses on four domains for Rust this year:

  • The WebAssembly portable code format.
  • Network services, which is the language’s predominant production usage domain.
  • CLI (command-line interface) apps, which could benefit from Rust’s portability, ergonomics, and reliability.
  • Embedded devices.

Rust’s developers are seeking feedback on the following new features:

  • The rustfix migration experience, which features a tool to smooth migrations between editions of the language. With rustfix, some code can be automatically rewritten to comply with new capabilities and idioms.
  • Module system changes, in which the system has been overhauled for simplicity.
  • In-band lifetimes, which drop an explicit lifetime parameter declaration in favor of a new lifetime name to connect lifetimes.
Paul Krill

Paul Krill is editor at large at InfoWorld. Paul has been covering computer technology as a news and feature reporter for more than 35 years, including 30 years at InfoWorld. He has specialized in coverage of software development tools and technologies since the 1990s, and he continues to lead InfoWorld’s news coverage of software development platforms including Java and .NET and programming languages including JavaScript, TypeScript, PHP, Python, Ruby, Rust, and Go. Long trusted as a reporter who prioritizes accuracy, integrity, and the best interests of readers, Paul is sought out by technology companies and industry organizations who want to reach InfoWorld’s audience of software developers and other information technology professionals. Paul has won a “Best Technology News Coverage” award from IDG.

More from this author