Rotates a ring, that is moves the insertion point.
rotate-ring ring how-many => object
A ring object created by make-ring.
A Lisp object.
rotate-ring rotates the ring, that is it moves the insertion point "back", which is the same direction that ring-pop would progress.
how-many is the number of positions to rotate. It has to be a fixnum, but otherwise is not limited.
rotate-ring returns the element before the insertion point after the rotation (the one that
0) would return if called immediately after rotate-ring).
If the ring contains 3 elements or more, then
returns the same value as:
(rotate-ring ring 2)
but the second form does not remove an element from the ring, while the first form removes 2 elements.
LispWorks User Guide and Reference Manual - 13 Feb 2015