More on rotate, Part 2

I'll quote one of your previous posts

It seems like it would be much better to include a dedicated RingBuffer struct that could be made much faster than extending arbitrary Sequence/Collection. If someone cared about performance, they cannot use your methods, and if they don't care, they could just do foo = TheirType(RingBuffer(foo).rotate()) and unlike your approach it would be obvious that it's slow.