WebAssembly

WebAssembly
Siglă.
Data primei versiuni 2015
Paradigmă Orientat spre expresie
Dezvoltatori Fundația Mozilla , Google , Microsoft , Apple , W3C
Ultima versiune 1.1 (9 decembrie 2019)
Tastare static
Influențată de asm.js , PNaCl
Licență Licență Apache
Site-ul web [1] , https://github.com/WebAssembly/design
Extensie de fișier wast și wasm

WebAssembly , prescurtat wasm , este un standard World Wide Web pentru dezvoltarea aplicațiilor . Este conceput pentru a completa JavaScript cu performanțe superioare. Standardul constă dintr-un bytecode , reprezentarea sa textuală și un mediu de execuție într-un sandbox compatibil JavaScript . Poate fi rulat în interiorul și în afara unui browser web . WebAssembly este standardizat în World Wide Web Consortium .

Deoarece WebAssembly specifică numai un limbaj de nivel scăzut , codul secundar este de obicei produs prin compilarea unui limbaj de nivel superior . Primele limbi acceptate includ Rust cu proiectul / modulul wasm-bindgen (ladă) , precum și C și C ++ , compilate cu Emscripten (bazat pe LLVM ). Multe alte limbaje de programare au astăzi un compilator WebAssembly, printre care: C # , Go , Java , Lua , Python sau Ruby .

Browserele web compilează bytecode-ul wasm în limba mașinii gazdei pe care sunt utilizate înainte de al rula.

Motoare de joc

Diferite motoare de joc folosesc WebAssembly pentru a oferi o versiune web rapidă a programelor care le utilizează.

Prezentarea sa oficială a avut loc pe 17 iunie 2015 și de la prima demonstrație (15 martie 2016), este posibil să jucați Unity Angry Bots prin browserul dvs. în WebAssembly. 2 noiembrie 2016, a atins punctul de reper al previzualizării browserului .

Consola fantasy open source TIC-80 are, de asemenea, o versiune WebAssembly.

TinyEMU de Fabrice Bellard (de asemenea autor al QEMU și ffmpeg ) este un emulator ușor RISC-V, este folosit pentru portul Haiku (remake gratuit al BeOS ). Este utilizat în special în BareDoom, un port Doom pe RISC-V care utilizează sistemul Barebox minim . Pentru demonstrație, acesta rulează pe TinyEMU recompilat în WebAssembly pentru a rula într-un browser.

Note și referințe

  1. „  Versiunea 1.1  ” ,9 decembrie 2019(accesat la 10 decembrie 2019 )
  2. http://www.developpez.com/actu/106127/WebAssembly-a-atteint-le-milestone-Browser-Preview-et-permet-de-compiler-des-modules-WebAssembly-depuis-des-fichiers-sources -CC-plusplus / WebAssembly a atins un punct de reper pentru previzualizarea browserului.
  3. http://webassembly.org/roadmap/ Planul de dezvoltare WebAssembly
  4. „  LIFF + TIC-80  ” , pe engineering.linecorp.com
  5. (în) „  My Haiku RISC-V harbor progress  ” pe Haiku-os.org
  6. (în) A3F, „  bareDOOM  ” pe BareDoom pe Github

linkuri externe