For a client, I've written "set" functions in BeginC++, for ECL's sets.
These include, e.g.
union (w/ or w/out dedup)
Maybe such functionality is already available, but these prove to be very handy when working with small (up to 100's?) sets.
I understand they could be abused, especially to try to replace the higher-level transformations in ECL.
Just an idea.