I have a lot of problem to understand what this function does: Code: iter: func [idx start end step /local stack][ stack: head [] while [tail? stack: at head stack idx] [insert tail stack none] if stack/1 = none [stack/1: end ] stack/1: stack/1 + step if stack/1 > end [stack/1: start] stack/1 ] It's used by http://www.rebol.org/view-script.r?script=easy-drawer.r to rotate the images.
It appears to setup a block that persists the data between calls ( because it uses stack: head [] without a local copy ). You then can summate a series between two values using a step value, and return the sum which is at the head of the stack variable.