Rust language gets direct WebAssembly compilation

Rust, the Mozilla-sponsored programming language geared to developing fast system-level software, can now compile to the WebAssembly portable code format without the need for additional tools.

Although still not officially supported, this feature was added via a pull request to enable WebAssembly as a back end by default. Through a nightly build this week, the wasm32-unknown-unknown target became natively available in Rust. (Nightly builds are unsupported test offshoots of the formal Rust language code, but their capabilities often get merged into the official build later.)

This week’s nightly build uses the LLVM tool chain more directly to support WebAssembly, with simpler setup and a bit more control over the output. LLVM provides the tool chain for Rust as well as for the Swift and Clang languages. At this point, Rust’s WebAssembly compilation has just limited support and documentation.

There is also a tool, called wasm-gc, to further compress WebAssembly modules generated in Rust. The tool looks for unused parts of code, such as unused imports or functions, and removes them. This results in a .wasm file that is smaller but with the same functionality, with just extraneous code removed. You can download wasm-gc on GitHub.

Our Case Studies

IDG Connect delivers full creative solutions to meet all your demand generatlon needs. These cover the full scope of options, from customized content and lead delivery through to fully integrated campaigns.