W3C has granted WebAssembly the status of a recommended standard

W3C Consortium announced on granting the WebAssembly technology the status of a recommended standard. WebAssembly provides a browser-independent universal low-level intermediate code for executing applications compiled from various programming languages. WebAssembly is positioned as a more promising and portable technology for creating high-performance web applications. It can be used for tasks requiring high performance, such as video encoding, audio processing, graphics manipulation and 3D, game development, cryptographic operations, mathematical calculations, and creating portable implementations of programming languages.

WebAssembly is similar to Asm.js in many ways, but it differs in that it is a binary format that is not tied to JavaScript. In WebAssembly, there is no need for a garbage collector, as memory management is explicit. With the use of JIT, WebAssembly can achieve performance levels close to native code. Among the primary objectives of WebAssembly are ensuring portability, predictability of behavior, and code execution identity across different platforms. Recently, WebAssembly is also promoted as a universal platform for safe code execution across any infrastructure, operating systems, and devices, not limited to browsers.

W3C has standardized three specifications related to WebAssembly:

  • WebAssembly Core — describes a low-level virtual machine for executing WebAssembly intermediate code. WebAssembly-related resources are delivered in the ‘.wasm’ format, similar to a ‘.class’ file in Java and containing static data and code segments for working with this data.
  • WebAssembly Web API — defines a programming interface based on the Promise mechanism for requesting and executing ‘.wasm’ resources. The format of WebAssembly resources is optimized to start execution without waiting for the complete file to load, which enhances the responsiveness of web applications.
  • WebAssembly JavaScript Interface — provides an API for integration with JavaScript. It allows retrieving values and passing parameters to WebAssembly functions. The execution of WebAssembly adheres to JavaScript's security model, and all interactions with the host system are made in a manner similar to executing JavaScript code.

In the future, specifications are planned for WebAssembly capabilities such as:

  • Multithreading with shared memory and atomic access to memory;
  • Vector operations based on SIMD, enabling parallel execution of loops;
  • Reference types for direct references to objects from WebAssembly code;
  • The ability to call functions without consuming additional stack space;
  • Integration with ECMAScript modules — the ability to load WebAssembly code from JavaScript as modules compliant with the ECMAScript 6 specification;
  • Garbage collector mode;
  • Debug interfaces;
  • WASI (WebAssembly System Interface) — an API for direct interaction with the operating system (POSIX API for file, socket handling, etc.).

    Source: opennet.ru

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster