WebAssembly
Paradigm | Imperative, structured, expression-oriented |
---|---|
Designed by | W3C |
Developer | |
First appeared | March 2017; 3 years ago |
Typing discipline | Static |
License | Apache License 2.0 |
Filename extensions |
|
Website | webassembly.org |
Influenced by | |
WebAssembly (often shortened to Wasm) is an open standard that defines a portable binary-code format for executable programs, and a corresponding textual assembly language, as well as interfaces for facilitating interactions between such programs and their host environment.[1][2][3][4] The main goal of WebAssembly is to enable high-performance applications on web pages, but the format is designed to be executed and integrated in other environments as well.[5][6]
WebAssembly became a World Wide Web Consortium recommendation on 5 December 2019[7] and, alongside HTML, CSS, and JavaScript, is the fourth language to run natively in browsers.[8] In order to use Wasm in browsers, users may use Emscripten SDK to compile C++ (or any other LLVM-supported language such as D or Rust) source code into a binary file which runs in the same sandbox as regular JavaScript code.[note 1] Emscripten provides bindings for several commonly used environment interfaces like WebGL. There is no direct Document Object Model (DOM) access; however, it is possible to create proxy functions for this, for example through stdweb,[13] web_sys,[14] and js_sys[15] when using Rust language.
The World Wide Web Consortium (W3C) maintains the standard with contributions from Mozilla, Microsoft, Google, and Apple.[16]
来源:oschina
链接:https://my.oschina.net/u/56130/blog/4282232