Atte;

Thanks for you help! I still don't understand why it works and my code doesn't, but maybe that's ok...


That's perfectly ok for your code, it's probably a rare non-trivial ChucK project that doesn't work around some issues here and there and your "live-thingy" seems to be over three times the size of mine, at least when we express size in lines of code (which is probably even a valid metric if we're talking ChucK issues).

I don't think it's ok in general. I'm not sure I agree with Mike's hunch of blaming the return process of the spork function. My hunch is that we are dealing with a instantiation error related to the rather loose link bwetween objects of type Shred and actual shreds that are running processes.

I say that because I find it rather odd that you can instantiate a non-primitive static object inside a public class; you can't do that for other non-primitives so something about the instantiation of Shred objects must be unusual. It may be a bit odd to find the one type of non-primitive that actually behaves propperly there and *doesn't* require a workaround suspicious... maybe we should be thankful instead but I still suspect it's to blame.

As an aside; I'm very interested in ChucK based live setups. Are there any videos/texts/audio-recordings about your system online? If not would you have the time to entertain me with some notes on your approach?

Yours,
Kas.