597 B
597 B
Decision 0002: C core with FLTK/C++ GUI
Status: Accepted
Context
The project prioritizes a readable, small C implementation while using FLTK for a lightweight desktop GUI.
Decision
Keep the engine, DSP, project model, graph, and public core API in C (C99
baseline). Use C++ only for FLTK windows and widgets. Communicate through
documented C headers with extern "C" guards.
Consequences
- No C++ classes, STL containers, exceptions, or FLTK types cross the C API.
- GUI code cannot mutate engine internals directly.
- Keep C++ simple and limited to the presentation layer.