Generative
Build systems that change over time using probability, mutation, and feedback.
- sample and hold
- Turing-style mutation
- feedback and slow modulation
Learn how free randomness becomes musically usable when it is sampled, held, and constrained in time.
Build systems that change over time using probability, mutation, and feedback.
Theory, structure, and practical context are all driven from content files.
Concrete repository anchors already exist for this lesson track.
By the end of this lesson, you should understand:
Sample & Hold actually does in a patchSample & HoldRandomness becomes musically useful when it is sampled at meaningful times.
A continuously changing random signal can be interesting, but without timing control it often feels unstable, slippery, or hard to phrase.
Sample & Hold changes that.
It works like this:
That simple process is one of the most important generative building blocks in modular synthesis.
Generative patching does not mean “let chaos take over.”
In practice, the strongest generative systems are usually built from a balance between:
Sample & Hold is one of the clearest examples of that balance.
It takes something unstable and makes it legible.
It helps to separate two situations.
A random source may move constantly and continuously.
That can be useful for:
But it is often less useful for clear melodic sequencing on its own.
Once a clock tells the system when to capture the value, randomness becomes event-based.
Now the patch has:
This is the first big shift from abstract randomness to usable generative behavior.
Sample & Hold captures an incoming voltage when it receives a trigger or clock event, then holds that value until the next event.
That means it answers two questions at once:
This is why it is such a powerful module. It creates discrete steps from a continuously changing source.
The core patch looks like this:
graph LR
RND[Random<br/>Source] -.->|Continuous| SNH[Sample & Hold]
CLK[Clock<br/>Pulse] -.->|Capture| SNH
SNH -.->|Stepped CV| QNT[Quantizer]
QNT -.->|Pitch| OSC[Oscillator]
TRIG[Trigger/Gate] -.-> ENV[Envelope]
ENV -.->|Level| VCA
OSC ==>|Audio| VCA ==>|Audio| OUT((Output))
classDef signal fill:#1A202C,stroke:#2D3748,stroke-width:2px,color:#E2E8F0;
classDef accent fill:#2C7A7B,stroke:#319795,stroke-width:2px,color:#E6FFFA;
classDef mod fill:#2A4365,stroke:#2B6CB0,stroke-width:2px,color:#EBF8FF,stroke-dasharray: 4 4;
classDef time fill:#2C5282,stroke:#2B6CB0,stroke-width:2px,color:#EBF8FF,stroke-dasharray: 2 2;
classDef rand fill:#702459,stroke:#97266D,stroke-width:2px,color:#FFE5F4,stroke-dasharray: 4 4;
class OSC,VCA signal;
class OUT accent;
class QNT,ENV,TRIG mod;
class CLK,SNH time;
class RND rand;
In this patch:
Sample & Hold freezes that valueThis is one of the simplest and strongest beginner generative pitch systems.
Without a quantizer, Sample & Hold can still create stepped variation, but pitch may feel too arbitrary.
With a quantizer:
This is a recurring modular lesson:
randomness becomes stronger when its output space is constrained.
When the patch is working, listen for these separate layers:
How often does a new value appear?
Does the pitch remain clearly held between clock events?
Does the quantized output stay within a usable note space?
Does the result feel sparse, busy, calm, nervous, tonal, or strange?
This kind of listening is important because generative systems are easier to shape when you can hear the different control layers separately.
A useful beginner lesson is to compare clock speeds.
The important point is that the random source may stay the same while the musical meaning changes completely because the sampling rhythm changes.
If the patch keeps changing but never settles, it can feel more confusing than musical.
Often the issue is not “too much randomness.” The issue is missing clock logic, range control, or quantization.
If the sampled voltage covers too much range, the result can jump too far to feel coherent.
Sample & Hold is a timing tool as much as a variation toolIt does not only create random notes. It defines when a value is allowed to change.
Try these three tests:
For each version, write down:
Take the same patch and vary only one parameter at a time:
Do not change everything at once.
This teaches one of the most useful generative habits:
separate the source of unpredictability from the rules that shape it.
Now that you can turn randomness into stepped melodic behavior, the next step is to shape how often things happen and how likely certain events are.
That leads naturally into probability and mutation.
Use the linked patch entries below as concrete repository anchors for this lesson track.
Adjacent lessons in the same track keep the topic progression coherent.
The first system diagram connects the modular engine, DAW layer, and visual output layer.