>>>>> "m" == matt  <mhm26 / drexel.edu> writes:

m> - then I have to worry about how blocks are used in each one if
m> special_magic uses break - what if the list was made dynamically from
m> reflection, etc?  Granted, I generally don't use break - especially in
m> lambdas - but its still something I didn't expect.

 well, the problem is that you have written something strange.

 Your first example was

   def meow
      yield
   end

   meow do
      puts "in block"
      break
      puts "leaving block"
   end

 Your second example was

   p = proc do
      puts "in proc"
      break
      puts "leaving proc"
   end

   def meow(block)
      block[]
   end

   meow(p)



Guy Decoux