Rust Never Sleeps: Community Grows, Eclipse-Based IDE Planned
Rust is on the rise, with the "most loved" open source programming language's community growing and a new Eclipse-based IDE in the works.
Sponsored by Mozilla Research, "Rust is a systems programming language that runs blazingly fast, prevents segfaults, and guarantees thread safety," says its site.
Its distinguishing features include:
- zero-cost abstractions
- move semantics
- guaranteed memory safety
- threads without data races
- trait-based generics
- pattern matching
- type inference
- minimal runtime
- efficient C bindings
According to Mozilla, "Rust was created in 2006 as an alternative to C/C++. Today, it is broadly compelling because it combines safety and speed, empowering programmers to take on more ambitious projects."
Mozilla said Rust:
- Offers the performance and power of a low-level language
- Provides the ergonomics of a high-level language
- Ships with top-notch tooling
- Makes it easy to safely introduce concurrency, without worrying about the typical pitfalls.
Rust was named the "most loved" programming language in Stack Overflow's huge dev survey last year and has been gaining further momentum since.
"Interest in Rust is growing," said Mozilla yesterday in publishing a 2018 roadmap and pointing to a user survey about what devs want to see going forward. "This year's survey got nearly 40 percent more responses than last year's, and respondents had a marked interest in developing on a variety of platforms, including mobile, Web, and embedded," the September 2017 report said.
That developer survey's 5,368 responses (percentages rounded off) indicated:
- Most developer respondents (43 percent) have been working with Rust for more than a year.
- Most respondents (81 percent) develop on Linux, followed by macOS (36 percent) and Windows (32 percent).
- Linux is also the most targeted platform (92 percent), followed by Windows (47 percent) and macOS (38 percent).
- Vim is the most popular editor for coding Rust (46 percent), followed by Visual Studio Code (34 percent) and IntelliJ (16 percent).
The survey also investigated the not-so-positive aspects of the language, exploring why users stopped using it.
"While the learning curve and language complexity still played a role in preventing people from picking up Rust, one aspect that resonated with many people is that there just simply aren't enough active commercial projects in Rust for people to be a part of," the survey said. "For some, they could surmount the learning curve if there was strong incentive to do so."
Top areas for improvement, the survey indicated, include:
- Better ergonomics
- Better documentation
- Better library support
- An easier learning curve
- More IDE support
Regarding that latter item, the Eclipse Foundation just so happens to have a new project in the works to create Eclipse RedOx: the Eclipse IDE for Rust. (A Jan. 26 tweet indicates the name will be changed to avoid confusion with the existing RedOX OS.)
The project's scope is "to provide development tools for Rust and Cargo based Rust applications in the Eclipse IDE. This includes creating projects, rich edition of source code files and manifest files, running and debugging code under development, running test suites, and packaging and deploying projects."
The project proposal referenced the user survey in providing impetus for the project.
"The Rust programming language is continuing to grow in popularity as the 5th most discussed project on GitHub (https://octoverse.github.com/)," it says. "However, almost 10 percent of Rust users are looking for better IDE support and 5 percent of past users stopped using Rust due to it's lacking IDE support.
"Within one year VSCode went from 3.8 percent to 34 percent of the Rust developer market share due to its available Rust Language Server integration," it continued. "There is the opportunity to develop and popularize a Language Server based plugin for complete Rust project support in Eclipse. This not only helps those who are looking for better IDE support but exposes more Eclipse IDE users to Rust, and more Rust users to Eclipse."
Meanwhile, the Rust project isn't sleeping. In addition to Mozilla's roadmap, early this year the Rust Programming Language Blog called for "blog posts reflecting on Rust in 2017 and proposing goals and directions for Rust in 2018."
That resulted in at least 99 such posts, which can be seen here.
Many of the ideas expressed in those posts are in the works, according to Mozilla's roadmap.
"Many of the goals for Rust in 2018 revolve around refinement and usability," Mozilla said. It listed the following key projects that can make it easier for programmers to get up to speed with Rust and be productive:
- Speeding up the rustc compiler
- IDE integration
- Error messages that take the guesswork out of program defects flagged by the rustc compiler
- Automatic code formatting with rustfmt
- Integrating Cargo with other build systems
- Growing the Rust library ecosystem
"As more and more developers gain experience with Rust, the community is keeping pace, with plans to publish new documentation, including new books and resources for intermediate Rust programmers," Mozilla said.
David Ramel is the editor of Visual Studio Magazine.