From: Stedwick Date: 2008-02-23T00:49:56+09:00 Subject: Re: What does *args do? I still don't see a problem. The power of Ruby is that you CAN do anything you want, not that you SHOULD do anything you want. To use the canonical example, I CAN do this: class Fixnum def +(other) puts "I've ruined your program, hahaha!" end end Suddenly, the addition operator is totally inconsistent and retarded. Many people think that Ruby shouldn't even allow you to do this. But, that's the whole point of Ruby: you CAN. I'm sure that somewhere, somehow, for somebody, in some situation, there's a reason why you would want to change the addition operator. I can't think of one, but does that mean we should disallow it? It's kind of similar to what I dislike about Python. It's great to have a consistent whitespace formatting schema, and I certainly SHOULD in my programs, but I just don't want to be FORCED to do so. Anyway, I've kind of gotten sidetracked. The point is, if you don't like the "strange" way that Ruby does assignments using commas, just don't use them. Just do it the normal way: a = [1,2,3] b = 4 c = 5 However, for the people who like the convenience, is there anything wrong with allowing the "strange", format? Anyway, even though you are technically correct, I see it as a complete non-issue. Also, out of curiosity, if this a, b, c = [1, 2, 3] does not mean this a = 1 b = 2 c = 3 then what on earth should it mean? All I can think of is giving an error and crashing your program...