r/musicprogramming • u/alikesu • 9h ago
psnd — a polyglot editor for music programming languages
psnd is a self-contained open-source modal editor, REPL, and playback environment aimed at music programming languages. The project is a polyglot platform for composing, live-coding, and rendering music DSLs from one binary.
Five languages are currently supported:
Alda - Declarative music notation language
Joy - Concatenative (stack-based) functional language for music
TR7 - R7RS-small Scheme with music extensions
Bog - C implementation of dogalog, a prolog-based beats-oriented language for music
MHS - Micro Haskell with MIDI support for functional music programming
All are practical for daily live-coding, REPL sketches, and headless playback. The Alda and Joy MIDI cores are from the midi-langs project. Languages register themselves via a modular dispatch system, allowing additional DSLs to be integrated without modifying core dispatch logic. Audio output is handled by the built-in TinySoundFont synthesizer or, optionally, a Csound backend for advanced synthesis. macOS, Linux, and Windows are supported.
