Hi Roman,
you're absolutely right, in fact that's the way I'm doing. but I suppose that having the possibility to directly set the object would allow to have better performances.
Imagine a situation where you have 10 [ctlin] objects in a patch and then you implement the kind of filter we're talking about (a couple of [spigot] and [==] in my case). in this scenario, every time a CC message is sent to the patch, all these objects are exercised ([ctlin] + 2 [spigot] + 2 [==], all of them * 10). this wouldn't happen if [ctlin] had 2 inlets to set the arguments on the fly. all the processes would happen under the hood, within the 10 [ctlin] objects, without involving other objects.
cheers,
Mario