なかだです。

この違いは意図的でしょうか。

$ ruby -e 'a = *1..2; p a'
# => [1, 2]
$ ruby -e p *1..2
# => 1..2

Object#to_aを使わないようにした副作用かという気がするのですが。


Index: eval.c =================================================================== RCS file: /cvs/ruby/src/ruby/eval.c,v retrieving revision 1.438 diff -u -2 -p -r1.438 eval.c --- eval.c 21 May 2003 08:48:02 -0000 1.438 +++ eval.c 21 May 2003 10:35:19 -0000 @@ -2740,5 +2740,5 @@ rb_eval(self, n) case NODE_RESTARY: case NODE_RESTARY2: - result = rb_ary_to_ary(rb_eval(self, node->nd_head)); + result = splat_value(rb_eval(self, node->nd_head)); break;
-- --- 僕の前にBugはない。 --- 僕の後ろにBugはできる。 中田 伸悦