NNdef: Livecoding Digital Musical Instruments in SuperCollider using Functional Reactive Programming
The SuperCollider audio synthesis environment allows the definition of Synths, digital instruments which generate sound using a graph of interconnected unit generators. In SuperCollider the definition of a Synth is mostly declarative, on the other hand the logic for controlling parameters of a Synth using musical controllers is usually implemented in a different context using callbacks and explicit state.
This paper presents a different approach where functional reactive programming (FRP) is used to define the control logic of the instrument, taking inputs from musical controllers, mobile apps or GUI widgets and sending outputs to the audio graph. Both audio and FRP graphs are defined in the same context and compiled simultaneously avoiding a hard division between audio and control logic.
An FRP implementation is used in the NNdef class to enable livecoding of both audio and FRP code, with hot-swap allowing an interactive workflow. Also included is a system to persist the state in the FRP network in order to save and recall the instrument at a later time.
Sat 29 SepDisplayed time zone: Guadalajara, Mexico City, Monterrey change
09:00 - 10:00 | |||
09:00 10mDay opening | Welcome FARM | ||
09:10 25mResearch paper | NNdef: Livecoding Digital Musical Instruments in SuperCollider using Functional Reactive Programming FARM Miguel Negrão Polytechnic Institute of Leiria DOI | ||
09:35 25mDemonstration | La Habra — Livecoding with Clojurescript FARM |