Skip to content

Companion Repositories

Mike Wright edited this page Sep 2, 2026 · 1 revision

Companion repositories

sw-mlpl is the language, evaluator, compiler path, browser playground, and serving infrastructure. The peer repositories below keep curricula, reusable libraries, native integrations, utilities, and exploratory research independently testable. They consume public surfaces such as .mlpl scripts, include, mlpl-repl, mlplunit, the native extension ABI, and generated browser artifacts; several also act as forcing functions for narrowly scoped improvements to the core.

Executable curricula

Repository What it demonstrates
demo-abstract-algebra Visual, executable finite algebra: magmas through groups, laws, counterexamples, Cayley tables, and structure-preserving maps.
demo-algorithms General algorithms expressed with whole-array operations and functional composition; also records language gaps exposed by real implementations.
demo-category-theory Diagram-led lessons on categories, composition, products, coproducts, functors, natural transformations, folds, optics, and an adjunction.
demo-combinators The Mockingbird “aviary,” using first-class references, partial application, and call to teach combinatory logic and higher-order programming.
demo-data-structures Reusable implementations, problem-solving demos, and conformance tests for sequential, associative, priority, cache, tree, trie, and indexed structures.
demo-design-patterns Functional interpretations of the Gang of Four patterns using values, composition, explicit transitions, and effects-as-data, with honest capability gates.
demo-functional-pipelines Readable Ramda-inspired pipelines built from MLPL functions and array operations.
demo-linear-algebra Visual lessons from vectors and dot products through least squares, PCA, LoRA, and attention.

Systems, ML tooling, and reusable components

Repository What it demonstrates or extends
demo-extensions Independently built Rust extensions, the dynamic ABI/loader/SDK contract, retained native scenes and app loops, and interactive MLPL-owned applications.
demo-file-processing Practical byte-oriented inspection, transformation, and bounded streaming, including workloads that exercise the native compiler path.
demo-memory Measured experiments connecting hash tables, caches, and filters to retrieval, sparse attention, and modern ML memory organization.
demo-ml-microscope Recorded timelines of named arrays, parameters, gradients, and metrics so learners can inspect algorithms without replacing them with framework calls.
demo-ml-utils Bounded inspection, validation, visualization, conversion, and quantization utilities for Safetensors, GGUF, and restricted tensor checkpoints.
demo-mlpl-libraries A proving ground for reusable MLPL modules consumed with sandboxed static include; it does not imply a package registry or dependency solver.

These repositories have their own release state and compatibility notes. Their READMEs and gates are authoritative for what currently runs; a roadmap item in a demo repository is not automatically a shipped core-language feature.

emufpga: future hardware ideas

emufpga explores the Serial Parameter Machine (SPM): stream immutable low-bit model weights in consumption order while retaining only activations, accumulators, scales, and recurrent state in fast memory. It combines a behavioral FPGA emulator, a seek-free parameter format, golden-vector correctness checks, a conceptual cycle model, and profiles based on Gowin devices used by Sipeed Tang Nano boards.

The research goal is resource efficiency rather than a speed claim: lower parameter residency, reuse one weight scan across batches or clients, and make the limits measurable. Its current evidence includes a multiplier-free ternary GEMV reference and measured streaming experiments; it reports negative results and caveats as well as favorable projections.

The boundary matters: emufpga is not a gate-level or bitstream-accurate simulator, does not emit HDL, and does not predict place-and-route fit. Its FPGA-like model is intended to produce falsifiable architecture ideas and golden vectors for later RTL. A self-contained MLPL version of the SPM experiment runs in the browser playground, and the core dataflow renderer includes an SPM pipeline demonstration.

How the pieces relate

flowchart TD
    Core[sw-mlpl core] --> Scripts[MLPL scripts and include]
    Core --> Tests[mlpl-repl and mlplunit]
    Core --> Ext[Native extension ABI and ports]
    Core --> Web[Browser and generated artifacts]
    Scripts --> Curricula[Curriculum demo repositories]
    Tests --> Tools[File, memory, and ML utilities]
    Ext --> Native[demo-extensions applications]
    Web --> Research[emufpga SPM demonstration]
    Research -. measured needs and ideas .-> Core
    Curricula -. executable capability pressure .-> Core
    Tools -. executable capability pressure .-> Core
Loading

Clone this wiki locally