Cagire: A Live Coding Sequencer Built on Forth and the Doux Audio Engine

Cagire: Live Coding in Forth

Cagire: A Live Coding Sequencer Built on Forth and the Doux Audio Engine

I built Cagire, a step sequencer where each step runs a Forth script instead of storing simple notes. Powered by my custom Doux audio engine, it lets you define sounds, trigger samples, and apply effects directly through code. With built-in interactive documentation and support for the Arf language for custom DSP, Cagire turns music creation into an open, experimental live coding experience available on macOS, Linux, and Windows.

Live coding is an autotelic activity: doing it is its own reward. There are no errors, only fun.
  1. eggy

    Cool, and I love the retro font. I had a Vic-20 (early 80s) and Commodore PET 2001 (1977) I am learning Odin, and I was going to try creating live coding environment with scripting in Forth and with the gui and rest in Odin, but for audio and graphics. I was inspired long ago by Paul Batchelor's Sporth and Tidal (now tidal cycles?). Forth is a great language. You can make an compiler/interpreter in a few days. John Earnest's ok.js is also cool. I like stack and array languages, so when I am not playing in J, I use Uiua. Uiua has the capability to do audio and graphics/animations and scratches my array/stack itch.

  2. DonHopkins

    Toffoli and Margolis's CAM-6 cellular automata machine board for the IBM-PC was programmed in FORTH. I made a simulator, and this video shows some of the original FORTH code that I saved, as well as my own compatible FORTH CA rule computer that le me run the rules from the book, which produced lookup table for the hardware, which the simulator is compatible with. I've since rewritten it in JavaScript. It's not live coding, but it has a live performance user interface (quite weird and hard to figure out, especially if you haven't read the book, but I demonstrate it in the video).

    CAM6 Demo

    https://www.youtube.com/watch?v=LyLMHxRNuck

    Original FORTH code that drove the actual CAM-6 board:

    tomt-cam-forth-scr.txt: https://donhopkins.com/home/code/tomt-cam-forth-scr.txt

    tomt-users-forth-scr.txt: https://donhopkins.com/home/code/tomt-users-forth-scr.txt

    My compatible CA compiler and glue to the simulator written in C:

    cam.f.txt: https://donhopkins.com/home/code/cam.f.txt

    compile.f.txt: https://donhopkins.com/home/code/compile.f.txt

    An old version of the simulator written C, before I rewrote it in JavaScript:

    https://github.com/SimHacker/micropolis/tree/master/Micropol...

    The JavaScript CAM6 simulator:

    CAM6.js: https://github.com/SimHacker/CAM6/blob/master/javascript/CAM...

  3. quaverquaver

    for FORTH like synthesis environment you will want to check out SAPF! (by James McCartney author of SuperCollider) https://github.com/lfnoise/sapf

More from this day

2026-07-19