It's always the same "issue": you have to compute the last element inside iota, you should never rely on the user giving you ideal inputs.
Alright, so require division for bidirectionality when given a custom step. There's no reason division should be required for bidirectionality in the most common case of iota(start, end).
