Prolog-ish Livecoding Cheatsheet

New to Prolog? Check out the Full Tutorial for comprehensive explanations!

Core shape

Built-ins (music-focused)

Event mapping (default)

Mini patterns

% Four-on-the-floor kick
event(kick, 36, 0.95, T) :- euc(T, 4, 16, 4, 0).

% Backbeat snare and busy hats
event(snare, 38, 0.85, T) :- euc(T, 2, 16, 4, 4).
event(hat,   42, 0.25, T) :- euc(T,11, 16, 4, 0).

% Probabilistic ghost hats
event(hat, 46, 0.18, T) :- every(T, 0.125), prob(0.3).

% Bass: pick from a list every half beat
bass(T, N) :- every(T,0.5), pick([40,43,47,48], N).
event(sine, N, 0.55, T) :- bass(T, N).

% Scale lead (major)
lead(T, N) :- every(T,0.25), scale(60, ionian, 1, 0, N).
lead(T, N) :- every(T,0.25), scale(60, ionian, 3, 0, N).
lead(T, N) :- every(T,0.25), scale(60, ionian, 5, 0, N).
event(sine, N, 0.4, T) :- lead(T, N).

% Chord arp (minor triad)
arp(T, N) :- every(T,0.5), chord(57, min, 0, N).
event(sine, N, 0.5, T) :- arp(T, N).

Tips