WebAssembly (sometimes abbreviated Wasm) defines a portable binary-code format and a corresponding text format for executable programs as well as software interfaces for facilitating interactions between such programs and their host environment.
The main goal of WebAssembly is to enable high-performance applications on web pages, “but it does not make any Web-specific assumptions or provide Web-specific features, so it can be employed in other environments as well.” It is an open standard and aims to support any language on any operating system, and in practice all of the most popular languages already have at least some level of support.