To me this is less readable because it's not clear why you need `other` to be part of the iterator rather than part of the environment. Additionally` self.iter().all(...)` is a much more common idiom than `Repeat::new`. I would vote to change all of them to stop using `Repeat`