Initial revision
procedure rotate(s,i) if i <= 0 then i +:= *s return s[i + 1:0] || s[1:i + 1] end
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.