On Fri, Dec 15, 2000 at 11:23:23PM -0800, Ian Hickson wrote: > Having said that: The only feature that I really miss from Perl 5 is the > lack of method pointers -- that is, references to functions in a package > with an associated object. Oh, that's easy. Use a closure... my $foo = Foo->new; my $meth_ref = sub { $foo->method }; &$methodref(); In fact, here's an example implementation... package Class::MethRef; use strict; sub meth_ref { my($proto, $method, @args) = @_; return sub { $proto->$method(@args) }; } So this... my $meth_ref = $obj->meth_ref('foo', @some_stuff); $meth_ref->(); is equivalent to this.. $obj->foo(@some_stuff); You could even make the meth_ref take additional (or overriding) arguments. Its a good idea, I'll put Class::MethRef on CPAN soon. -- Michael G. Schwern <schwern@pobox.com> http://www.pobox.com/~schwern/Thread Previous | Thread Next