Search documentation

Search starts with current English documentation · ASPL 0.7.0

Enter a complete name such as read_line, or words about a topic.

    العربية
    Source files

    Open one UTF-8 .aspl or .لبات file, up to 1 MiB, in a new draft. It stays in this browser and does not run automatically.

    Investigate browser-local WebAssembly constraints

    ASPL MVP · Historical MVP scope

    Archived ASPL MVP specification. Original English source only; no Arabic counterpart is available. These historical rules are not a complete ASPL 0.6.0 reference.

    On this page

    Investigate browser-local WebAssembly constraints

    Type: research Status: resolved Parent: Find the ASPL MVP specification

    Question

    What constraints do current primary WebAssembly and C-to-WebAssembly toolchain documentation impose on compiling the C11 ASPL compiler and register VM for browser-local compilation and execution, especially filesystem behavior, dynamic loading, process APIs, output size, worker use, and isolation?

    Answer

    Compile the portable C compiler core and register VM ahead of time into one statically linked WebAssembly module, then run it in a dedicated Web Worker. Use in-memory source and bytecode APIs, stay single-threaded, and enforce instruction, memory, output, recursion, and wall-clock limits. The browser build must omit ELF execution, process APIs, and arbitrary C library loading; Emscripten dlopen handles WebAssembly side modules, not Linux shared objects. Keep the host import list fixed and small because WebAssembly isolates the module from the browser but does not stop unsafe C code from corrupting other objects inside the module's linear memory.

    See Browser-local WebAssembly constraints for the ASPL MVP for the cited findings and prototype checks.

    Browse pages