Articles tagged “wasm”
-
WebAssembly and Back Again: Fine-Grained Sandboxing in Firefox 95
In Firefox 95, we're shipping a novel sandboxing technology called RLBox — developed in collaboration with researchers at the University of California San Diego and the University of Texas — that makes it easy and efficient to isolate subcomponents to make the browser more secure. This technology opens up new opportunities beyond what's been possible with traditional process-based sandboxing, and we look forward to expanding its usage and (hopefully) seeing it adopted in other browsers and software projects.
-
Safely reviving shared memory
At Mozilla, we want the web to be capable of running high-performance applications so that users and content authors can choose the safety, agency, and openness of the web platform. Shared-memory multi-threading is an essential low-level building block for high-performance applications. However, keeping users safe is paramount, which is why shared memory and high-resolution timers were effectively disabled at the start of 2018, in light of Spectre. Until now...
-
Multi-Value All The Wasm!
Multi-value is a proposed extension to core WebAssembly that enables functions to return many values, among other things. It is also a prerequisite for Wasm interface types. Nick Fitzgerald has been adding multi-value support all over the place recently, started with the Rust and WebAssembly toolchain. Next he added support to the Wasmtime runtime, and the Cranelift code generator it’s built on top of. Here's his account of the journey.
-
The Mozilla Developer Roadshow Talks: Firefox, WebAssembly, CSS, WebXR and More
The Mozilla Developer Roadshow program launched in 2017 with the goal of bringing expert speakers and web technology updates to local communities through free events and partnerships. Check out the video playlist from our summer tour, with talks on topics like Mixed Reality, WebAssembly, modern CSS, and more. Or register now for an upcoming Roadshow event in Asia.
-
Debugging WebAssembly Outside of the Browser
WebAssembly has begun to establish itself outside of the browser via dedicated runtimes like Mozilla’s Wasmtime and Fastly’s Lucet. While the promise of a new, universal format for programs is appealing, it also comes with new challenges. At Mozilla, we’ve been prototyping ways to enable source-level debugging of .wasm files using existing tools, like GDB and LLDB.
-
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.
-
The Arch: Using Rust & WebAssembly to animate 30k colored LED lights
In June, Mozilla collaborated with artist Ian Brill to create an installation called the “Arch” at JSConf EU in Berlin. This interactive environment allowed people to experience the intersection of art and technology in a physical, pulsating, immersive way. The environment also created an opportunity for JavaScripters and friends to create animations and experience the underlying capabilities of WebAssembly and Rust.
-
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.
-
A cartoon intro to WebAssembly
WebAssembly is a way of taking code written in programming languages other than JavaScript and running that code in the browser. So when people say that WebAssembly is fast, what they are comparing it to is JavaScript. In this series, I want to explain to you why WebAssembly is fast.