> -----Original Message-----
> From: Mike Schramm [mailto:mike / mikeschramm.com] 
> Sent: Thursday, October 13, 2005 5:39 AM
> To: ruby-talk ML
> Subject: array1 + array2 newb question
> 
> Hey all,
> 
> I'm a ruby newbie, so this will be obvious, but I can't figure it out.
> 
> I'm trying to create a map grid from arrayed names of streets.  I  
> want to go from [1,2,3] and [a,b,c] to [[1,a], [2,a], [3,a],  
> [1,b],... [3,c]].
> 
> so far the closest I have gotten is
> 
> a1.collect!{|x| [x, a2.collect!{|y| y}]}
> 
> which returns-- well you can try it if you like, but it's not 
> right.   
> Instead of just returning one value of a2 at a time, it returns the  
> whole thing every time.  I'm guessing I need to somehow cycle 
> through  
> each element of a2 (ie a2[0], a2[1], a2[2]), but I can't 
> figure it out.
> 
> You guys will probably eat this up.  What am I so obviously 
> doing wrong?
> 
> Mike

It's not so obviously,

a1.inject([]){|s, x| s + a2.map {|y| [x, y]}}

cheers

Simon