http://qs1969.pair.com?node_id=355022


in reply to Re: Functional Inside Out Closure Objects
in thread Functional Inside Out Closure Objects

I haven't quit worked it out yet, but I think I would do something where if "methods" had a second arguement that was a blessed ref, it would not create a new blessed ref, but would just use the blessed ref it was given. Something like this:
#!/usr/bin/perl package Foo; use Class::FIOC; use strict; sub new { my $class = shift; my $foo_thing = shift; my $subclass = shift || 0; methods { foo_thing=>sub { print "My foo_thing=$foo_thing\n"; } },$subclass; } #!/usr/bin/perl package Bar; use Foo; our @ISA qw(Foo); use Class::FIOC; use strict; sub new { my $class = shift; my $bar_thing = shift; my $self = methods { bar_thing=>sub { print "My bar_thing=$bar_thing\n"; } } return Foo->new("Hello",$self); }