ChucK sporked child shreds are killed the moment their parent shred exits
When a shred is sporked with spork ~ fn(), the child lives only as long as the parent shred. If the main (parent) shred reaches its end and exits, all sporked children are immediately removed — even if they are in the middle of playing a note. The fix is to keep the parent alive after sporking all children: add while(true) 1::second => now; at the end of the parent. This pattern appears in every multi-voice ChucK program.
Examples
spork ~ voice1();
spork ~ voice2();
while(true) 1::second => now; // keep parent alive
Assessment
Explain why child shreds die when the parent exits and write the idiomatic pattern to keep a parent shred alive indefinitely.