Kyung won Cheon wrote: > --- test1.rb --- > > def test_begin_while(*l) > b = begin a = l.shift end while !l.empty? > end > > puts test_begin_while(1,2,3) > > ############### > # Help Me^^ > ############### It works like this because your line works like (b = begin a = l.shift end) while !l.empty? and the 'command while condition' construct returns nil. -- Posted via http://www.ruby-forum.com/.