From: Robert Klemme Date: 2005-01-27T03:00:50+09:00 Subject: Re: Argument-per-argument Passing "Trans" schrieb im Newsbeitrag news:1106754033.158966.115450@c13g2000cwb.googlegroups.com... >> How about >> >> take(*give) >> take(*give_each) >> >> Note also, that all your give* methods return the same. > > Right, but that's exactly what I don't want to do. I.e. changing the > notation used in passing the arguments to #take. Rather I want a way to > "transfer" the arguments directly into the receiveing method (#take) as > dictated by the return of the giving method (#give). As it stands you have only these options: a) Use * at the call (which you don't) b) make take more flexible (as some methods in the std lib): def take(*a) a = a[0] if a.size == 1 && Enumerable === a[0] p a end >> take 1,2,3 [1, 2, 3] => nil >> take [1,2,3] [1, 2, 3] => nil Kind regards robert