SuperCollider's SynthDef and Pbind together create a patterned synthesizer: SynthDef defines the voice, Pbind sequences it
In SuperCollider, a SynthDef defines a reusable synthesis algorithm with named control parameters (freq, sustain, amp). Pbind plays that SynthDef as a timed sequence by pairing parameter names with pattern streams. Pseq([50, 62, 61, ...], inf) generates an infinite looping sequence of values; Pseq([0.5, 0.1, ...], inf) controls event durations. The \instrument key names the SynthDef. This separation of voice design (SynthDef) from sequencing (Pbind) mirrors the synthesizer/sequencer split in hardware and is the foundation for pattern-based composition in SuperCollider.
Examples
SynthDef(\acid, { |freq=440, sustain=1, amp=0.5|
var sig = LFSaw.ar(freq, 0, amp) *
EnvGen.kr(Env.linen(0.1, sustain, 0.1), doneAction: 2);
sig = RLPF.ar(sig, Line.kr(freq, freq*2.5, sustain*0.8), 0.25);
Out.ar(0, sig!2)
}).add;
p = Pbind(\instrument, \acid, \midinote, Pseq([50,62,61,57], inf), \dur, Pseq([0.5,0.5,0.1,0.1], inf)).play;
Assessment
Create a simple SynthDef for a sine wave with amplitude envelope, then write a Pbind that plays a rising C major arpeggio (C4, E4, G4, C5) with equal durations of 0.25.