Specifications
Pointers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Tables, arrays and graphs . . . . . . . . . . . . . . . . . . . . . . . . 17
2.4 Getting help with Pure Data . . . . . . . . . . . . . . . . . . . . . 18
Exercise 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 8
Exercise 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 9
Exercise 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 9
3 Using Pure Data . . . . . . . . . . . . . . . . . . . . 21
3.1 Basic objects and principles of operation . . . . . . . . . . . . . . . 21
Hot and cold inlets . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Bad evaluation order . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Trigger objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Making cold inlets hot . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Float objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Int objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Symbol and list objects . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Merging message connections . . . . . . . . . . . . . . . . . . . . . . 23
3.2 Working with time and events . . . . . . . . . . . . . . . . . . . . . 23
Metronome . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
A counter timebase . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Time objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Select . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.3 Data flow co ntrol . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Route . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Moses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Spigot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Swap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Change . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Send and receive objects . . . . . . . . . . . . . . . . . . . . . . . . . 27
Broadca st messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Special message destinations . . . . . . . . . . . . . . . . . . . . . . . 27
Message s e quences . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.4 List objects and op e rations . . . . . . . . . . . . . . . . . . . . . . 28
Packing and unpacking lists . . . . . . . . . . . . . . . . . . . . . . . 28
Substitutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Persistence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
List distribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
More advanced list operations . . . . . . . . . . . . . . . . . . . . . . 30
3.5 Input and output . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
The print object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
MIDI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.6 Working with numbers . . . . . . . . . . . . . . . . . . . . . . . . . 33
Arithmetic objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Trigonometric maths objects . . . . . . . . . . . . . . . . . . . . . . . 33
Random numbers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33