Home / Companies / Memgraph / Blog / Post Details
Content Deep Dive

WASM All Things - A Tour of the WebAssembly Ecosystem

Blog post from Memgraph

Post Details
Company
Date Published
Author
Kostas Kyrimis
Word Count
637
Language
English
Hacker News Points
-
Summary

Kostas Kyrimis delves into the intricacies of the WebAssembly (WASM) ecosystem, highlighting the process of compiling C libraries into WASM modules using the Emscripten SDK, which transforms C programs into modules consumable by browsers or JavaScript engines. The article addresses the challenge posed by the restricted environment of browsers, particularly the limited access to system interfaces like POSIX, and discusses how Emscripten emulates system libraries through JavaScript files, thereby constraining the modules to JavaScript's limitations. To overcome these restrictions, the WebAssembly System Interface (WASI) is introduced, offering a complete sandbox environment that allows for standalone WASM modules to be executed on any WASI-compliant runtime, thus providing seamless interoperability across different execution environments. The author also touches on the potential for Emscripten to fully support WASI in the future and introduces Wasmer, a WASM runtime supporting WASI and available in multiple programming languages, which could unify runtime semantics across various languages. The discussion sets the stage for exploring jsmgclient, Memgraph's first WASM-based client adapter, which will be covered in the subsequent part of the series.