Extending SynthDef

Synthdefs behave weirdly if their functions include “yield”. - this has been noted before in this post by @Avid_Reader for example Thread safety within SynthDef

Is there some upside to this behavior?

As far as advantages to being able to yield inside of synthdef functions, it may be hard to see them yet from this vantage?

But if this proposal is solid technically (which I don’t feel qualified to judge) I don’t see any concrete downsides yet(aside from being a breaking change).

Regarding clarity, I guess SynthDef functions are already hybrid - you can include any language side data you want by way of constructing the def. You can already load a buffer inside a SynthDef if you want for that matter.