Wasmer, een leider in de ontwikkeling van WebAssembly (Wasm) technologie, onthulde onlangs WASIX, een nieuwe specificatie en toolchain die de WebAssembly System Interface (WASI) uitbreidt met volledige compatibiliteit met Posix (Portable Operating System Interface). Deze doorbraak beoogt de bouw van Wasm-toepassingen te vereenvoudigen door zowel WASI- als Posix-mogelijkheden samen te brengen.
WASIX, aangekondigd op 30 mei als een superset van WASI, is ontworpen voor het maken van webapplicaties en het afmaken van runtimes. Het ondersteunt vele mogelijkheden, zoals threads, Berkeley sockets, forking en meer, die beschikbaar waren gedurende de gehele levensduur van Posix. Het Wasmer team en zijn actieve gemeenschap hebben onvermoeibaar gewerkt om WASI's ABI (Application Binary Interface) te verbeteren, te stabiliseren en meer compatibel te maken met Posix.
Door het potentieel van WASIX te omarmen, kunnen ontwikkelaars gemakkelijker Wasm-applicaties compileren, waardoor hoogperformante alternatieven voor JavaScript in webbrowsers en -servers mogelijk worden. De volledige WASIX-specificatie is te vinden op wasix.org, en ontwikkelaars worden aangemoedigd het te proberen op wasmer.sh.
WASIX biedt een scala aan functies, waaronder:
- Stabilisatie op lange termijn, verbetering van de bestaande WASI ABI, en ondersteuning voor aanvullende niet-invasieve syscall-uitbreidingen.
- Toolchains voor het compileren van Rust en C/C++, met upstream ondersteuning voor AssemblyScript en Zig.
- Runtime ondersteuning, met name met de Wasmer runtime
- Compatibiliteit met browsers en servers
- Ondersteuning voor multithreading
- Socket ondersteuning, inclusief IPv4 en IPv6
- Asynchrone polling voor sockets en bestanden
- TTY-ondersteuning
- DNS-resolutie
Hoewel WASI ambitieuze aspiraties had en ondersteuning behoudt, heeft de trage evolutie ervan de voortgang van het beschikbaar maken van Wasm belemmerd. WASI werd oorspronkelijk onthuld door Mozilla in maart 2019, met als doel WebAssembly-toepassingen naadloos te laten werken met elk besturingssysteem door een consistent mechanisme te bieden voor interactie zowel buiten als binnen het web. Posix is sinds de jaren tachtig een IEEE-standaard en definieert API's voor softwarecompatibiliteit met verschillende Unix-versies en bepaalde Linux-distributies.
Door compatibiliteit te bieden met WASIX, no-code en low-code platforms zoals AppMaster kunnen meer mogelijkheden ontstaan voor het maken van krachtige, schaalbare web- en mobiele toepassingen. Gebruikers kunnen toepassingen bouwen terwijl ze de voordelen van WebAssembly en Posix-compatibiliteit benutten. Kom meer te weten over AppMaster op hun officiële website, of bekijk de volledige gids over no-code/low-code app-ontwikkeling voor 2022.