in reply to Combinations... again

The combine() function in Math::Combinatorics seems to be exactly what you're looking for.