Interoperability is a sequence of gated boundaries, not a percentage.
One verified artifact at a time.
The long-term objective is bidirectional ecosystem interoperability and broad target support. The current repository contains narrower compiler, host, loader, ABI, and generated-package slices whose source, execution, publication, and support states must be read separately.
entity Semaprax
status pre-alpha research
snapshot 036cc69
authority github.com/wavect/semapraxRepository status at the audited snapshot
| Repository snapshot | 036cc69 · 2026-09-02. Documentation passed, but the current CI run was cancelled. The separate v0.2.0 release tag passed all 45 jobs. |
|---|---|
| Full product status | 49 Partial · 0 Implemented · 0 Missing |
| Graph and project contract | Graph ≤ v24 · Project v1 baseline · Project v8, v9, v10 developer preview |
| Promotion baseline | 5f6fb965 · The v0.2.0 prerelease was published after all 45 jobs in the exact-tag release run passed. |
| Authored developer preview | Project v8-v10, package, borrowing, transport, and revision-store paths received exact-tag hosted regression coverage. Generated packages remain unpublished and the profiles remain unpromoted. |
Which platforms and ecosystems does Semaprax support?
Semaprax retains bounded interpreter, C11/Clang, Core Wasm/Node, and scalar JavaScript/TypeScript lanes. Project v8 adds authored npm/Core-Wasm and safe Rust routes for Bytes, Option<Bytes>, and Result<Bytes, i64>; Project v9 and v10 add flat owned records and owned UTF-8. Those package surfaces are unpublished and unpromoted, and do not establish a stable general ABI or broad host-language compatibility.
Target support evidence
| Platform | Source state | Exact-head evidence | Publication state | Supported scope |
|---|---|---|---|---|
| Linux native | Partial | The v0.2.0 tag passed selected Linux C11/Clang, host, loader, archive-smoke, and sanitizer gates for admitted slices Evidence | Bounded research artifacts | Bounded language and ABI slices, not general Linux application compatibility |
| macOS native | Partial | The v0.2.0 tag passed selected macOS, Apple Silicon archive-smoke, native, and desktop regressions Evidence | Private bounded harnesses | Host and package evidence does not prove a general macOS application platform |
| Windows native | Partial | The v0.2.0 tag passed selected Windows x86-64 archive-smoke, hardened-loader, package, and desktop regressions Evidence | Private bounded harnesses | Bounded loader and package contracts, not general Windows application support |
| Browser and Wasm | Developer preview | The v0.2.0 tag ran selected scalar Core Wasm/Node and Project v8-v10 npm/Core-Wasm package regressions Evidence | Scalar baseline bounded; Project v8-v10 unpublished and unpromoted | Project v8 admits Bytes, Option<Bytes>, and Result<Bytes, i64>; v9 flat owned records and v10 UTF-8 remain unpromoted. No multi-browser or general Web API support |
| iOS | Partial | Bounded Swift ownership, static-surface, and arm64 simulator harness evidence; no complete exact-head product gate Evidence | Private bounded contracts | Private bounded contracts, not general App Store or iOS lifecycle support |
| Android | Partial | Bounded JNI ownership and Android emulator harness evidence; no complete exact-head product gate Evidence | Private bounded contracts | Bounded host contracts, not general Android application support |
Ecosystem boundary evidence
| Ecosystem boundary | Source state | Exact-head evidence | Publication state | Supported scope |
|---|---|---|---|---|
| C11 and Clang | Partial | The v0.2.0 tag ran deterministic C11 compilation and selected O0/O2 execution regressions for admitted slices Evidence | Generated research backend | Generated backend boundary, not arbitrary C header or library interoperability |
| Rust native host | Developer preview | Earlier private scalar bridge evidence plus an authored safe Rust package route for Project v8 Evidence | Unpublished developer preview | The Project v8 route is unpublished and unpromoted. It admits only Bytes, Option<Bytes>, and Result<Bytes, i64>, not general Rust interoperability |
| WebAssembly and WIT components | Partial | Core Wasm/Node lanes and isolated component-runtime and WIT boundary fixtures; complete exact-head promotion remains open Evidence | Core Wasm bounded; general components unpublished | General public component mapping and broad package integration remain closed |
| Swift and JNI | Partial | Bounded Apple Swift and Android JNI ownership contracts; no full product gate Evidence | Private bounded contracts | No general bidirectional foreign-function interface or ecosystem package compatibility |
| Existing language ecosystems | Roadmap | Package reports, offline locks, and Compatibility Evidence v1 provide bounded analysis, not general compatibility Evidence | No stable general public ABI | General bidirectional FFI, stable public aggregate and resource ABIs, package compatibility, and full Component Model publication remain open |
Long-term objective
A program should cross native, browser, mobile, desktop, and existing-language boundaries without losing ownership, error, or semantic identity facts. That objective remains roadmap work until each public boundary has reproducible conformance evidence.
GitHub specifications are the normative source. This page is a dated research summary. GitHub repository.
Questions, answered without the hype
Does Semaprax support every native target?
No. It has bounded evidence across native, Wasm, desktop, iOS, and Android lanes. General platform support remains experimental or roadmap work.
Is Semaprax 100 percent interoperable with other languages?
No. Full bidirectional ecosystem interoperability is a long-term objective. Current evidence covers narrower generated C11, Rust-host, WIT, Swift, and JNI boundaries.