🔄 Losowy artykuł
Szlaki górskie Pociągiem dookoła Polski Podróże kulinarne Hotele-unikaty świata Parkingi przy lotniskach Łowiska Europy Campingi dla kamperów Imprezy — atrakcje w Polsce Poradnik pilota drona Wydarzenia i bilety Promocje bankowe Kamery na żywo Oferty Centrum Podróży Koliber Triper.pl Trip.FazaFM.com — plany podróży

WebAssembly

WebAssembly
Logo języka WebAssembly
Logo języka
Pojawienie się

9 lat temu

Typowanie

statyczne

Aktualna wersja stabilna

2.0.0
(17 października 2023) [±]

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 (WAT – WebAssembly Text Format) w formie S-wyrażeń[1]. 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[2]. W listopadzie 2017 Mozilla ogłosiła wsparcie „dla wszystkich głównych przeglądarek​”[3]. Nazwa nawiązuje do języka asemblera, ponieważ jest to język niskopoziomowy.

WebAssembly (tzn. Podstawowa Specyfikacja WebAssembly[4] oraz Interfejs JavaScript WebAssembly[5]) 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 wynikiem kompilacji. Wiele języków można skompilować do Wasm, np. Rust, Go, C++, C#, Java, Python czy TypeScript.

Przykład reprezentacji tekstowej

(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

  1. ↑ WAT - WebAssembly Text Format. WEBAssemblyMan. [dostęp 2021-12-14].
  2. ↑ Google, Microsoft, Mozilla And Others Team Up To Launch WebAssembly, A New Binary Format For The Web.
  3. ↑ WebAssembly support now shipping in all major browsers.
  4. ↑ WebAssembly Core Specification [online], 5 grudnia 2019 [dostęp 2021-02-28].
  5. ↑ WebAssembly JavaScript Interface [online], 5 grudnia 2019 [dostęp 2021-02-28].

Linki zewnętrzne

ℹ Źródło: artykuł „WebAssembly” w polskiej Wikipedii. Treść dostępna na licencji CC BY-SA 4.0; lista autorów w historii edycji. Wersja może się różnić od aktualnej na Wikipedii (kopia odświeżana okresowo).
💳 Revolut
Karta wielowalutowa do podróży — płacisz za granicą bez przewalutowań.
Odbierz kartę →
💰 ZEN.COM
Konta multiwalutowe i karty — płatności bez granic z poziomu aplikacji.
Sprawdź ZEN →
🌍 Wise
Przelewy za granicę po realnym kursie — bez ukrytych marż.
Wypróbuj Wise →
Linki polecające — obowiązują regulaminy usług.
FazaFM.com — radio i newsy Hrubek.pl — Hrubieszów blisko Ciebie Gorzkie Groszki — blog