Breaking WebAssembly Runtime Limitations: Asyncifying ZeroPerl

Frustrated by the lack of exnref support in most WebAssembly runtimes, rendering ZeroPerl unusable, the author decided to fix the problem instead of complaining. By leveraging Binaryen's Asyncify feature, a replacement for setjmp was implemented from scratch, bypassing libsetjmp's compatibility issues. After removing the official library, writing assembly code, and optimizing with wasm-opt, ZeroPerl now runs successfully in Wasmer, Wasmtime, and other WebAssembly runtimes. This breakthrough delivers a fully sandboxed and self-contained Perl WebAssembly module.
Read more