Open
Description
openedon Nov 2, 2016
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.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment