The first four Web language after WASM become HTML, CSS and JS

We all know that the World Wide Web Consortium (W3C) has certified Web language HTML, CSS and JavaScript, and recently announced alliance WebAssembly Core Specification ( WebAssembly Core Specification ) as an official Web standard, which means WebAssembly became the fourth Web languages .

WebAssembly also called WASM, it is a binary format command stack-based virtual machine design, WASM as a portable target, used to compile high-level languages ​​(such as C / C ++ / Rust), which can deploy high-performance client and on the Web server applications, but it also can be used in many other environments.

WebAssembly describes a type of memory sandbox execution environment of safety, the environment can be achieved even within the existing JavaScript virtual machine. When embedded in a Web when, WebAssembly browser will enforce security policies and permissions homology.

WASM a variety of implementations, including browsers and standalone system, it can be used for video and audio codecs, graphics and 3D, multimedia and gaming, password or portable computing language applications. The current 1.0 version of Wasm has support Chrome, Firefox, Safari and Edge browser.

For the Web, because its virtual instruction set design, WebAssembly can make the page load run in local compiled code, which can improve Web performance. In other words, WebAssembly can achieve near-native performance and optimize load times, and most importantly, it can be used as a target to compile existing code libraries.

Despite the small number of local types, but with respect to JavaScript, the most improved performance thanks to its use of the same type. WebAssembly language compiler optimization for decades, its bytecode is optimized for compactness and streaming. When downloading other code, web pages can begin. Network and API access via the included JavaScript libraries, and JavaScript security model is the same.

W3C also announced WASM next development focus, new features include:

  • Threading, thread : Threading offers multithreading and memory advantages of atomic memory access shared.
  • Fixed-width SIMD, the SIMD fixed width : vector operations parallel execution of loops.
  • Reference types reference types : a direct reference codes allow WebAssembly host object.
  • Tail calls, Last call : direct calls without using an additional stack space.
  • ECMAScript module integration, ECMAScript module integration : to interact with the JavaScript by WebAssembly executable file is loaded into ES6 module.

There are also some have been follow-up features, including garbage collection, Debug Interfaces WebAssembly System Interface (WASI) and so on.

It is worth mentioning that last month, Mozilla, Fastly, Intel and Red Hat announced the establishment of a joint organization Bytecode Alliance (bytecode Union) , the alliance aims through collaborative implementation of standards and proposed new standards to improve the browser's WebAssembly outside of the ecology.

Guess you like

Origin www.oschina.net/news/111917/wasm-became-the-fourth-web-language