Damian Conway writes:
 > Famous last words. ;-)
 > 
 > 
 > > Was it ever decided what C<for> would look like with multiple streams? 
 > 
 >      for zip(@x, @y, @z) -> $x, $y, $z {...}
 > 
 > and its operator version:
 > 
 >      for @x ¦ @y ¦ @z -> $x, $y, $z {...}
 > 
 > 
 > > Maybe we could just use the stream delimiters in the C<grep> like we do
 > > in C<for>?
 > 
 > No. We gave up special stream delimiters in C<for>s,
 > in preference for general zippers.
 > 
 > Damian
 > 

but one can think of zip(...) being able to be l-value 

@x ¦ @y ¦ @z :=  map {  /foo/ && $_ but unzip(0), 
                        /bar/ && $_ but unzip(1),
                        /zap/ && $_ but unzip(2),  
                }, @source;

where argument of unzip is index of the stream to which to "direct"
the value . but then I am not sure where the actual "nzipping" happens 
and what does it mean binding to the l-value function. 

arcadi 

Reply via email to