[Extremely annoying moment: I am in a internet cafe in the "South" (meaning, I am not "North", figure it out
[Furthermore, I can't find his email address]
richardc wrote Algorithm::GenerateSequence when he might have been satisfied with my Set::CrossProduct.
His implementation is much different than mine, so maybe there is room in the world for two things that achieve the same effect in different ways. The difference in use is apparent to the programmer, and one way might be easier to deal with. Who knows.
Still, reading his documentation gave me a lot of interesting ideas, so it is not a total waste.