1.9 KiB
1.9 KiB
ALIGNMENT — ModuLisp standalone repo
Mission
Give the ModuLisp engine — the portable language + DAG signal-engine core of uSEQ — its own repository so it can evolve and be tested independently of the firmware, and be consumed two ways:
- Host builds (
meson setup build && ninja -C build && meson test -C build) — the unit-test surface for engine work. - Arduino library (via
library.properties) — included by the RP2350 uSEQ firmware.
The uSEQ tree remains the system of record for the full product; this repo is the engine core only. Divergence policy: changes land here first (with tests), and the uSEQ firmware updates its consumption, not the other way round — until uSEQ's own copy is retired.
Open questions
- License resolved 2026-08-17: MPL-2.0, adopted from the pre-existing
Forgejo
w1n5t0n/modulispplaceholder repo (Dimi, 2025-03). The uSEQ tree carrieslicense/cern_ohl_s_v2.txt(a hardware license, wrong fit for C++ sources), so this file-set is now MPL-2.0 by operator's placeholder choice. - Test exclusions.
test_flash_storage.cpp,test_wasm_wrapper_projection.cpp, andtest_osc_sine_nodedef.cppstay behind in uSEQ because they link the firmware, wasm, and nodedef modules respectively (details in README.md). If those modules are ever extracted, their tests should follow. - Upstream sync. This extraction was a one-time copy of the working tree
at src-useq git
1081ae8(2026-08-17). There is no automation keeping this repo in sync with later uSEQ engine changes; the first divergence will need a cherry-pick/replay decision. modulisp/crate is a stub. Onlymodulisp/lisp/symbol_intern.hlives there today. The expected growth path is that language-level machinery moves out ofsignal_engine/intomodulisp/over time; the sibling directory layout undersrc/exists to keep relative includes stable while that happens.