1. Nothing specific outside of a general recognition that some copies can be avoided. A map's result is pushed onto the stack (assuming list context) for the subsequent op to do something with it. It is a copy but it is marked as something that can be recycled. Stuff that recognizes that (like map itself) can avoid making extra copies. I think = map( EXPR, map( EXPR, LIST ) ) copies the values from LIST once and then as possible, just re-uses the copies for the next map which gives it to the aassign which also notes that the input is recycleable and steals it instead of making another copy.
2. Not terribly useful. I used chained maps where the output from one is not the same size as the input. The subsequent maps deal with these entirely different lists. I suppose it could be moved into the map but that just makes the code harder to read.
3. See #1. Something of a fashion, in a more general sense already happens.
In reply to Re: map: chaining vs. nesting
by diotalevi
in thread map: chaining vs. nesting
by Roy Johnson
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |