What explains Pmono vs Pbind stop behavior?

I have yet to fully digest your post (the group idea seems good, also I see now that was discussed before), but yeah it struck me too that the auto-instantiation of the (not very parameterizable) EventStreamPlater player straight from patterns with .play is basically rather bad from a “separation of concerns” perspective…

Another thing that I find a little dubious from the same perspective is that the ESP doesn’t really play anything. Nor do the Pmono etc. actually instantiate a different player, even though one could conceptualize exactly the same stream being played differently by a “mono player” and a “chordy/poly player”. Instead Pmono wraps the stream (via PmonoStream) by adding some callbacks from the Events back into the PmonoStream (to find/store the node id) and everything actually gets played (i.e. sent to server) via the real player(s) that are in Event. The fact that Event is hardly a generic capsule but instead knows how to play every possible event type (extensible via addEventType) is quite “Pdef-ish” and strikes me as being basically the “god object” you criticize…