[chuck-users] comments, questions about chuck
Ge Wang
gewang at CS.Princeton.EDU
Thu Feb 16 00:25:26 EST 2006
Hi Charlls!
> * ugen/plugin infrastructure; what headers you include? what classes
> you inherit?
While the framework for both statically and dynamically adding new
classes and unit
generators exists, only the static one is exposed. Look into any of
the ugen_*.cpp or
ulib_*.cpp as an example. These are pretty cumbersome, we definitely
hope to
improve them at some point.
> *** how much multithread-eable could be chuck; in other words, how
> possible is to implement shreds in a true multithreaded mode where
> each shred can run in a different core, but keeping the
> sample-synchronous approach?
Having multi-core isn't hard, but keeping the sample-synchronous nature
between cores
may be really difficult to do efficiently. This is the subject of
future research.
> i imagine one could relax that to a "block-synchronous" multi-shreding.
There has been some thought put into adaptively optimizing by putting
things into blocks when possible, as advised by the shreduler. There
was a discussion of it here:
https://lists.cs.princeton.edu/pipermail/chuck-dev/2005-September/
000090.html
https://lists.cs.princeton.edu/pipermail/chuck-dev/2005-September/
000091.html
> * dynamic allocation of resources; of course, this could be
> implemented on top of the language; for example, creating a fixed
> number of audio buffers and calling .read as a score progresses a
> number of times in the same sndbuf object would (i imagine) free the
> previous allocated buffer and alloc for the new one.
There is certainly a goal. Currently we can dynamically allocate
objects
in the language (via new) but garbage collection isn't done yet. This
will
hopefully be finished in the very near future.
Best,
Ge!
More information about the chuck-users
mailing list