Greetings Atte and all,
It would make sense to have all UGens stereo aware. This might include supplying all with a .pan, .left and .right parameter, but at least it should be possibe to route a stereo signal through them and get a stereo signal out.
Would that be expensive, both in execution time and in coding time for the developers?
Yes, but mainly in execution time, and in most cases it's not needed and in some cases even confusing. In the general case, mono UGens are clear and fully expressive to work with (it would be nice however to have Chorus2, sndbuf2 and a few others). Furthermore, we are moving (slowly) into multi-channel, and making all UGens N-channel (to be consistent) makes less sense. I think the solution to to be have clearer and more convenient language syntax/semantics for connecting mono/stereo/multi-channel (whenever that is) UGens to each other, based on the type-system. Being strongly-typed has advantages, and we should leverage them here. Best, Ge!