On Tue, Mar 04, 2008 at 09:26:23AM +0900, Nobuyoshi Nakada wrote:
> I guess that feature could be achieved with rb_proc_new() and
> Module#define_method.

This is more or less what I used to do, however:
1. In 1.8, procs cannot take a block parameter
2. Call semantics for a proc differ from semantics for methods (it is
   impossible to differentiate between 0 args and 1 nil arg -- see
   [ruby-talk:268788])
3. Calling a proc is more expensive than calling a CFUNC

Paul