From: Ryan Leavengood Date: 2005-11-05T11:31:54+09:00 Subject: Re: Optional block arguments? On 11/4/05, Vincent Foley wrote: > How can I have a block that optionally takes an argument? Thanks. irb(main):001:0> p = proc do |*a| irb(main):002:1* if a[0] irb(main):003:2> puts "Got parameter: #{a[0]}" irb(main):004:2> else irb(main):005:2* puts "No parameter" irb(main):006:2> end irb(main):007:1> end => # irb(main):008:0> p.call No parameter => nil irb(main):009:0> p.call 1 Got parameter: 1 => nil Ryan