From: "Matthew K. Williams" Date: 2009-08-20T05:31:00+09:00 Subject: Re: #has_arguments? As a followup, has_arguments? could be written as: def has_arguments?(&b) vars = eval("local_variables",b.binding) return false if vars.length == 0 vars.each do |v| return false if eval("#{v}.nil?",b) end return true end end then you'd call it like: if has_arguments? {} #note the empty block something end Matt