Lazy evaluated map

It’s also fairly straightforward to write a library that does this in user land.