The truth is it's very difficult to show what I mean exactly since the actual code is fairly complicated (right now, I don't even _I_ know what I'm doing...)
But let's say the starting point is: <https://github.com/arturo-lang/arturo/blob/master/src/library/Iterators.nim#L58-L134> (now imagine, a couple of the existing params, e.g. `collection` may also be of different types...)
