class VariableArguments def initialize *args @first, @second, @third = *args end end v = VariableArguments.new puts v.inspect v = VariableArguments.new("Fred") puts v.inspect v = VariableArguments.new("Fred", "Wombat") puts v.inspect v = VariableArguments.new("Fred", "Wombat", "Furry") puts v.inspect v = VariableArguments.new("Fred", "Wombat", "Furry", "Sloshed") puts v.inspect #<VariableArguments:0x1af35b0 @first=nil, @second=nil, @third=nil> #<VariableArguments:0x1af3490 @first="Fred", @second=nil, @third=nil> #<VariableArguments:0x1af33a0 @first="Fred", @second="Wombat", @third=nil> #<VariableArguments:0x1af3298 @first="Fred", @second="Wombat", @third="Furry"> #<VariableArguments:0x1af3178 @first="Fred", @second="Wombat", @third="Furry">