WebAssembly

Z Wikipedii, wolnej encyklopedii
Przejdź do nawigacji Przejdź do wyszukiwania
WebAssembly
Ilustracja
Logo języka
Pojawienie się 4 lata temu
Typowanie statyczne
Twórca W3C, Mozilla, Microsoft, Google, Apple
Licencja Apache License
Platforma sprzętowa wieloplatformowy
Platforma systemowa wieloplatformowy
Strona internetowa

WebAssembly, w skrócie Wasm – otwarty standard przenośnego zapisu binarnego, oraz reprezentacji tekstowej w formie S-wyrażeń. Głównym założeniem języka jest udostępnianie wysoko wydajnej platformy do uruchamiania aplikacji na stronach internetowych. Standardem zajmuje się organizacja W3C ze wsparciem Mozilli, Microsoftu, Google oraz Apple. Pracę nad Wasm zostały ogłoszone w 2015 roku[1]. W Listopadzie 2017 Mozilla ogłosiła wsparcie "dla wszystkich głównych przeglądarek".[2]

WebAssembly (tzn. Podstawowa Specyfikacja WebAssembly[3] oraz Interfejs JavaScript WebAssembly[4]) stało się rekomendacją World Wide Web Consortium 5 Grudnia 2019 roku, zostając czwartym językiem natywnie obsługiwanym w przeglądarkach internetowych, dołączając do HTML, JavaScript, oraz CSS.

Chociaż Wasm ma swoją reprezentację tekstową, w postaci S-wyrażeń, jest najczęściej celem kompilacji. Wiele języków można skompilować do Wasm, np. Rust, Go, C++, C#, Java, Python czy TypeScript.

Przykład reprezentacji tekstowej[edytuj | edytuj kod]

(module
  (import "math" "exp" (func $exp (param f64) (result f64)))
  (func (export "doubleExp") (param $0 f64) (result f64)
    (f64.mul
      (call $exp
        (get_local $0)
      )
      (f64.const 2)
    )
  )
)

Przypisy[edytuj | edytuj kod]

Linki zewnętrzne[edytuj | edytuj kod]