From: ara.t.howard@... Date: 2006-03-03T01:17:53+09:00 Subject: Re: Confusion Over Keyword Arguments On Fri, 3 Mar 2006, Berger, Daniel wrote: >>> # Method definition, '=' means assignment (of default value): def >>> foo(bar, baz = 3) >>> ... >>> end >>> >>> # Method call, '=' means keyword >>> foo(baz = 5, bar = 2) >> >> but is >> >> foo baz = 5, bar = 2 >> >> a, b = foo(baz = 5), (bar = 2) >> >> or >> >> a = foo( (baz = 5), (bar = 2) ) >> >> ?? > > Second one. but that's a problem no? number two is the same as this baz = 5 bar = 2 a = foo baz, bar see, when on writes foo baz = 5, bar = 2 it's ambiguous if those assignments are part of a method call or not. bar escpecitally, it could easily be considered an assignment statement (bar=2) that's part of a parrallel assignment statement. or am i missing something? -a -- judge your success by what you had to give up in order to get it. - h.h. the 14th dali lama