> x = lambda do |*args| > if args.size == 5 > # call another block > yield *args.map{|x| x.gsub(/es$/, '') } > end > end You are using 2 variables with the same name (x) in the same scope. So, in fact, you are only using 1 variable... gegroet, Erik V. - http://www.erikveen.dds.nl/