From: Erik Veenstra Date: 2006-02-09T02:18:22+09:00 Subject: Re: Meta-Meta-Programming > How is the term "monitor-functions" you have used in this > thread different from the standard "higher-order functions," > if you don't mind my asking? A monitor-function isn't a higher-order function, since it takes the name of a method, not the method itself. Nor does it _return_ a function. Well, it does _create_ a new function as a side effect, but that's not part of the definition of higher-order functions. Higher-order functions are used in Lisp. In functional programming (that's what you try to do in Lisp) side-effects are considered bad. In OO (Ruby) it's considered common. (Although monitor-functions are not OO'ish...) Module#wrap_method, used in the implementation of a monitor-function, is a higher-order function: It takes a block. So, the relation between monitor-functions and higher-order functions that does exist, is invisible to the user of a monitor-function. gegroet, Erik V. - http://www.erikveen.dds.nl/