Comment by soulofmischief

Comment by soulofmischief 20 hours ago

0 replies

You should check out Andrew and Ben's work, Extempore.

There is definitely a learning curve, but after reading the basics and poking through the examples, you realize you can do anything.

Lots of C libraries have wrappers already written and you can also write your own. I wrote a curl wrapper and pulled live data from sources such as weather APIs, assigned different facets of the data to different instruments and dynamics. You can write GL shaders and generally create your own interfaces.

It's also fully networked with sample-accurate synchronization, so that it's very easy to construct distributed computation and physical interaction. This is where the cyberphysical programming aspect comes into play.

Extempore has support for MIDI devices, and I've really pushed my gear to the limit with it. It is also very low level; you even write your own DSP. But you create libraries over time so that spontaneous jams don't require twenty minutes of fiddling first.

It took a lot of time to feel comfortable in the environment when I first got into it years ago, but with modern agentic IDRs such as Cursor, you should have a much, much easier time. It's great for writing algorithmic music and really great for freeform jam sessions. Lots of built in goodies that will really inspire you.

Also it's LISP.

https://extemporelang.github.io/