I’m in the process of pulling apart the SC stuff to address a range of annoyances with respect to non-realtime objects, datasets etc. This is 1/n of these sorts of question, I’m afraid. (n might end up only being 2 though…)
I’m proposing to get rid of the symbolic name for
FluidLabelSet and instead make them behave like
Buffer, with an internally assigned integer ID than can be overridden if you really want. The name doesn’t seem to add anything in SC, and also accounts for quite a deal of undesirable complexity under the hood.
- how much of your extant code would this break,
- and how helpful would a graduated change be, given where you are with your pieces right now?
Code that would break would be anything that relies on the symbolic name explicitly (e.g. using
FluidDataSet.*at, or the symbolic name directly in a UGen input).
The most brutal version of this change would simply ignore any value for the second constructor argument that wasn’t an integer. However, I can imagine some more graduated versions that essentially would deprecate the use of names, with a view to getting rid of them before public release.