WebAssembly
| WebAssembly | ||
|---|---|---|
|
| ||
| ? | ||
| Obecná informace | ||
| Běžná rozšíření | .odpad, .wasm | |
| Paradigma | Imperativní , nestrukturované | |
| Objevil se v | 2015 | |
| typový systém | Statické , silné | |
| ovlivněný | asm.js | |
| Licence | licence apache | |
WebAssembly , zkráceně wasm, je formát přenosného binárního kódu ( bytecode ), který umožňuje plné spouštění skriptů na straně klienta v prohlížeči .
Je to nízkoúrovňový jazyk , původně navržený jako cílový formát pro kompilaci z C a C++ . I když podporuje i zdrojové kódy pro další jazyky, jako je Rust and Go . [ 1 ] [ 2 ] [ 3 ]
Design
WebAssembly je koncipován jako přenosný zásobníkový engine , navržený tak, aby syntakticky analyzoval rychleji než Javascript a zvýšil rychlost provádění.
Historie
WebAssembly bylo oznámeno 17. června 2015. Demo běžící na Unity's Angry Bots ve Firefoxu , Chromiu , Google Chrome a Microsoft Edge bylo vytvořeno 15. března 2016 . [ 4 ] [ 5 ] [ 6 ] [ 7 ]
V roce 2019 byla vytvořena společnost Bytecode Alliance , jejímž cílem je podporovat používání jazyka a podporovat pevné základy nejen pro navrhování mobilních aplikací, ale také pro používání různých vývojových standardů; mobilní telefony a stolní počítače a také prohlížeče ( Edge a Safari ) [ 8 ]
Vývoj
Počáteční implementace podpory WebAssembly v prohlížečích bude založena na formátech asm.js podporovaných Mozillou a PNaCl (Portable Native Client), navržených společností Google. Po vydání verze MVP se navrhuje začlenit garbage collection [ 9 ] , který umožní kompilovat jazyky s tímto systémem, jako je Java nebo C#, generující kód wasm.
Tým zapojený do vývoje WebAssembly zahrnuje lidi propojené s Mozillou , Microsoftem , Googlem nebo Applem .
Reference
- ^ "Cíle vysoké úrovně WebAssembly" . GitHub /WebAssembly/design . 11. prosince 2015.
- ↑ "Oznámení Rust 1.14" . Blog o programovacím jazyce Rust . 22. prosince 2016.
- ^ „Vyšla verze Go 1.11 – The Go Blog“ . blog.golang.org . 24. srpna 2018.
- ^ "Spouštěcí chyba" . GitHub /WebAssembly/design . 11. června 2015.
- ↑ Wagner, Lukáš (14. března 2016). "Milestone WebAssembly: Experimentální podpora ve více prohlížečích" . Mozilla Hack .
- ^ Thompson, Seth (15. března 2016). "Experimentální podpora pro WebAssembly ve V8" . V8Blog .
- ↑ Zhu, Limin (15. března 2016). "Náhled experimentů WebAssembly v Microsoft Edge" . Vývojářský blog Microsoft Edge .
- ↑ "Bytecode Alliance: Tento nový projekt přináší web Assembly do prostředí napříč prohlížeči a platformami." .
- ^ "WebAssembly/design" . GitHub (v angličtině) . Archivováno z originálu 5. července 2016 . Staženo 8. dubna 2017 .