Skip to content
DocsSystemsQueue System

Queue System

β–‘β–‘β–‘β–‘β–‘ ←──── tail β–‘β–‘β–‘β–‘β–‘ β–‘β–‘β–‘β–‘β–‘ β–‘β–‘β–‘β–‘β–‘ Event Queue ────────────────→ β–‘β–‘β–‘β–‘β–‘ β”‚ β–‘β–‘β–‘β–‘β–‘ β”‚ β–‘β–‘β–‘β–‘β–‘ β”‚ β–‘β–‘β–‘β–‘β–‘ ←──── front β”‚ EVNTQ push v β”‚ β–‘β–‘β–‘β–‘β–‘ ←──── tail β”‚ β–‘β–‘β–‘β–‘β–‘ β”‚ β–‘β–‘β–‘β–‘β–‘ ↓ β–‘β–‘β–‘β–‘β–‘ Operator Queue ────────────────→ β–‘β–‘β–‘β–‘β–‘ β–‘β–‘β–‘β–‘β–‘ β–‘β–‘β–‘β–‘β–‘ β–‘β–‘β–‘β–‘β–‘ β–‘β–‘β–‘β–‘β–‘ ←──── front OPRTQ β”‚ └───────→ perform queue ops (PUSH/SWAP/POP/DUP) at tapehead-like cursor relative to playhead triggering position

Inspired by the Event Loop, the queue is a first-in-first-out (FIFO) dispatch mechanism. Events accumulate, wait, and are consumed one at a time, each driving a state transition in the sequencer. Every jump or timbral gesture is the result of something that was previously enqueued.

Event Queue (EVQ)

Holds pending event operators to be fused into the next push. Current available ops:

KeyOpDescription
c>CHORDChord event β€” triggers a triad.
h>HOLDNHold event β€” sustains the note.
r>RTCHTRatcheting β€” re-triggers the note.

Queue Operators

Spatially mapped on the keyboard. Current available ops:

KeyOpDescription
PPushPush current playhead position (or front event) onto OPQ.
SSwapSwap the top two items in OPQ.
OPopExecute and remove the front item from OPQ.
DDuplicateDuplicate the top item in OPQ.