As Rust hits 1.0, Mozilla is organizing ideas about where next to take the language, its toolset, and its users Now that Mozilla’s Rust language has hit its 1.0 milestone, more or less, the company is focusing on the next logical steps. In a document entitled “Priorities after 1.0,” published on the rust-lang.org site, Mozilla senior researcher Niko Matsakis outlined the next goals for the language. The full list runs quite long, but the most urgent items are better support for Windows and ARM, better library APIs, and faster compilation. Of all the items on the list, it’ll be heartening for Windows developers and ARM mavens that better Windows and ARM support place so highly on the list. Windows tends to be the odd man out when it comes to supporting new languages, in big part because most languages assume a Unix-like environment. To that end, building for Windows typically involves relying on tools to provide a Unix compatibility layer via something like the MinGW toolchain; Rust currently uses MinGW, but the plan is to shed its dependency on that toolset and be able to build natively on Windows. Better support for distributing Rust libraries and programs is another high priority. Right now, Rust has a package management system called Cargo, but it only goes so far, and this part of the wish list includes a one-step install process for Rust programs and the ability to distribute binaries with as few external dependencies as possible. When it comes to compilation, Matsakis notes that “there’s a lot of low-hanging fruit here [in optimizing the compiler], but also an opportunity to re-architect parts of the compiler and gain huge wins.” Google’s Go, which despite its relatively newness has emerged as a contender for creating distributed network applications (e.g., Docker), sports super-fast compilation as one of its selling points. If Rust becomes able to achieve build speeds of the same magnitude as Go, that would push it closer to the scripting-language-replacement territory that Go has laid partial claim to. Rust was developed at Mozilla as a high-speed systems programming language, akin to C/C++, but with modern concurrency and memory-safety features. At least one major project at Mozilla, the Servo HTML layout engine, is being built in Rust. The language mutated a great deal in its pre-1.0 incarnation, but both the feature set and the language’s APIs are now considered stable enough to be the basis for deliverable projects. Mozilla’s bigger ambitions for Rust ostensibly include not just system-native software like Web browsers, but entire operating systems as well, given the language’s billing as a way to achieve speed without sacrificing safety. The next step for Mozilla is to put that speed and safety into the broadest possible set of hands, and see what gets built with them. Related content feature 14 great preprocessors for developers who love to code Sometimes it seems like the rules of programming are designed to make coding a chore. Here are 14 ways preprocessors can help make software development fun again. By Peter Wayner Nov 18, 2024 10 mins Development Tools Software Development feature Designing the APIs that accidentally power businesses Well-designed APIs, even those often-neglected internal APIs, make developers more productive and businesses more agile. By Jean Yang Nov 18, 2024 6 mins APIs Software Development news Spin 3.0 supports polyglot development using Wasm components Fermyon’s open source framework for building server-side WebAssembly apps allows developers to compose apps from components created with different languages. By Paul Krill Nov 18, 2024 2 mins Microservices Serverless Computing Development Libraries and Frameworks news Go language evolving for future hardware, AI workloads The Go team is working to adapt Go to large multicore systems, the latest hardware instructions, and the needs of developers of large-scale AI systems. By Paul Krill Nov 15, 2024 3 mins Google Go Generative AI Programming Languages Resources Videos