New submission from Nicholas Musolino <n.musol...@gmail.com>:
The builtin `map` function takes one or more user-supplied iterators, and returns an iterator. When all the user-supplied iterator arguments to `map` provide a valid length hint (according to the PEP 424 length hint protocol), the iterator returned by `map` should provide a length hint. I suggest the following behavior: when all the iterator arguments provide a valid length hint, the map iterator should return the minimum value among all length hint values, because it stops upon exhaustion of the shortest input iterator. If any user-supplied iterator does *not* provide a length hint according to the PEP 424 protocol, the map iterator should return the `NotImplemented` singleton, in accordance with the protocol. When the evaluation of `__length_hint__()` for a user-supplied iterator raises an exception, the exception should be propagated by the map iterator's `__length_hint__()` method. ---------- components: Interpreter Core messages: 346772 nosy: nmusolino priority: normal severity: normal status: open title: builtin map iterator should provide __length_hint__ type: enhancement _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue37435> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com