WebAssembly: Review of 2024 and outlook for 2025

In 2024, WebAssembly is developing rapidly. Safari integrates important functions such as garbage collection. Further optimizations are planned for 2025.

listen Print view
Red heart lies on notebook keyboard

(Image: oatawa/Shutterstock.com)

3 min. read
Contents

In 2024, WebAssembly has evolved both inside and outside the browser. C. Gerard Gallant has written a detailed article about the development of WebAssembly in 2024 and the plans for 2025. He is the author of the book “WebAssembly in Action” and works as a software developer. His article provides an overview of the most important innovations and looks at what is to come.

Safari has introduced some important WebAssembly features, including extended constant expressions and typed function references to improve module efficiency.

The introduction of garbage collection in Safari was a significant step towards optimizing memory usage in managed languages, according to Gallant. Tail calls were also added to handle recursive functions more efficiently. Relaxed SIMD has also been available since 2024 to use additional SIMD instructions for better performance, although it is still behind a flag – which means that users can decide for themselves whether they want to enable or disable this functionality.

Standardized functions such as extended constant expressions, typed function references and tail calls have found support in all major browsers. Firefox has introduced support for multiple memory blocks, while Safari is still working on their implementation. Custom annotations and branch hinting are also considered standard to give developers more flexibility and performance. According to Gallant, these developments show that WebAssembly is increasingly recognized as a stable and comprehensive platform.

Videos by heise

Among the new features available is improved exception handling, which introduces the new exnref value. Firefox has already activated this function, while it is still behind a flag in other browsers. The JS String Builtins, which make it possible to use JavaScript objects directly from WebAssembly modules, are also available in Chrome and Firefox. Memory64 raises the memory limit of WebAssembly modules and is also available in these two browsers.

Outside the browser, the WebAssembly System Interface (WASI) initiative has made significant progress. The introduction of WASI 0.2 brought the component model and new interfaces such as wasi-cli and wasi-http, which allow access to command line functions and HTTP requests. The Bytecode Alliance has opted for a regular patch release cycle to ensure continuous improvements. Other interfaces such as wasi-io and wasi-filesystem extend the application possibilities of WebAssembly systems.

In 2025, Safari is expected to complete the implementation of multiple stores and memory64 to catch up with other major browsers. In addition, support for JS String Builtins could be introduced in Safari. Further progress is expected on JavaScript Promise integration and ESM integration to make the use of WebAssembly in the browser even more seamless.

Outside the browser, the release of WASI 0.3 is imminent, which will introduce native async capabilities with the component model. According to Gallant, these developments could further expand the capabilities of WebAssembly and extend its use cases both in the browser and beyond.

Further information on the development of WebAssembly in 2024 and plans for 2025 can be found on the Platform Uno blog.

(mdo)

Don't miss any news – follow us on Facebook, LinkedIn or Mastodon.

This article was originally published in German. It was translated with technical assistance and editorially reviewed before publication.