> This is a good principle, but Ruby does not heed it: If we're going to pick on Ruby I think you can find several examples closer to what this thread is about. f = lambda { 4711 } f() NoMethodError: undefined method `f' for main:Object f.call() 4711 Least surprise?