Found 41 results for “wasm”
-
Rust 2018 is here… but what is it?
Starting today, the Rust 2018 edition is in its first release. With this edition, we’ve focused on making Rust developers as productive as they can be. Most of the language changes are completely compatible with existing Rust code. Because they don’t break any code, they also work in any Rust code… even if that code doesn’t use Rust 2018. This is because of the way the language is evolving. Lin Clark illustrates and explains.
-
WebAssembly’s post-MVP future: A cartoon skill tree
People have a misconception—they think that the WebAssembly that landed in browsers back in 2017—is the final version. In fact, we still have many use cases to unlock, from heavy-weight desktop applications, to small modules, to JS frameworks, to all the things outside the browser… Node.js, and serverless, and the blockchain, and portable CLI tools, and the internet of things. The WebAssembly that we have today is not the end of this story—it’s just the beginning.
-
Calls between JavaScript and WebAssembly are finally fast 🎉
At Mozilla, we want WebAssembly to be as fast as it can be. This started with its design, which gives it great throughput. Then we improved load times with a streaming baseline compiler. With this, we compile code faster than it comes over the network. Now, in the latest version of Firefox Beta, calls between JS and WebAssembly are faster than many JS to JS function calls. Here's how we made them fast - illustrated in code cartoons.
-
Baby’s First Rust+WebAssembly module: Say hi to JSConf EU!
A secret project has been brewing for JSConf EU, and this weekend is the big reveal: The Arch is a larger-than-life experience that uses 30,000 colored LEDs to create a canvas for light animations. And you can take charge of this space. Using modules, you can create a light animation. But even though this is JSConf, these animations aren’t just powered by JavaScript modules. In fact, we hope you will try something new… Rust + WebAssembly.
-
Hello
wasm-pack
!Introducing wasm-pack, a new tool for assembling and packaging Rust crates that target WebAssembly. These packages can be published to the npm Registry and used alongside other packages. This means you can use them side-by-side with JS and other packages, and in many kind of applications.
-
Sneak Peek at WebAssembly Studio
WebAssembly.Studio is an online IDE (integrated development environment) that helps you learn and teach others. It’s also a Swiss Army knife that comes in handy whenever working with WebAssembly (WASM). WebAssembly is a low-level assembly-like language that runs with near-native performance and provides languages such as C/C++/Rust with a compilation target so that they can run on the web. WASM is also designed to run alongside JavaScript.
-
JavaScript to Rust and Back Again: A wasm-bindgen Tale
Recently we’ve seen how WebAssembly is incredibly fast to compile, speeding up JS libraries, and generating even smaller binaries. We’ve even got a high-level plan for better interoperability between the Rust and JavaScript communities, as well as other web programming languages. The goal of wasm-bindgen is to provide a bridge between the types of JavaScript and Rust. It allows JS to call a Rust API with a string, or a Rust function to catch a JS exception. wasm-bindgen erases the impedance mismatch between WebAssembly and JavaScript, ensuring that JavaScript can invoke WebAssembly functions efficiently and without boilerplate, and that WebAssembly can do the same with JavaScript functions.
-
Making WebAssembly better for Rust & for all languages
To be a useful as a web language, Rust needs to work well with the JavaScript ecosystem. We have some work to do to get there, and fortunately that work will help other languages, too. Lin Clark's code cartoons explore some of the WebAssembly usability challenges that we need to tackle. Want to help?
-
Shrinking WebAssembly and JavaScript code sizes in Emscripten
Emscripten is a compiler toolchain for asm.js and WebAssembly which lets you run C and C++ on the web at near-native speed. Emscripten output sizes have decreased a lot recently, especially for smaller programs. Alon Zakai takes a closer look at some of these optimizations and new areas for improvement.
-
Oxidizing Source Maps with Rust and WebAssembly
A detailed look at how we replaced the most performance-sensitive portions of the
source-map
JavaScript Library’s source map parser with Rust code that is compiled to WebAssembly. The results: The WebAssembly is up to 5.89 times faster than the JavaScript implementation on realistic benchmarks operating on real world source maps! Additionally, performance is also more consistent: relative standard deviations decreased. We hope that, by sharing our experience, we inspire others rewrite performance-sensitive JavaScript in Rust via WebAssembly.