in reply to Simple Rotation

Excellent routine (as we've all come to expect from you...:-)), but I have one minor criticism: The sanity checks, while handy (and ++ for including them!), have a confusing error message. They refer to a sub called &alternate, but you have since renamed it to &cycle.