-
-
Couldn't load subscription status.
- Fork 5.7k
Description
The notation f.(v) effectively maps f over an array v. This operation is not lazy, it materializes the mapped array.
I think it could be useful to have an analogous notation for lazy maps. Maybe f..(v)? Instead of materializing the mapped array, this should return something equivalent to the generator:
(f(x) for x in v)
For example, this could be useful to do something like:
sum(f..(v))
which is more efficient than materializing the intermediate array in:
sum(f.(v))
Of course right now sum takes an optional function argument, so one can write sum(f,v). But see the discussion here: #19146. If one decides to remove the method sum(f,v), I think the notation sum(f..(v)) could be a nice alternative.