in reply to Re: Altering the inheritance path of an object
in thread Altering the inheritance path of an object
Hello.
I read Moose::Manual::Roles.pod and saw the car which applied Breakable roll on the fly, like you demonstrated. I heard several times Ruby people talks something like this... I mean instance extended on the fly.
I , who have little experience for OO programing, thinks why people do like these, I would do ... say
with old school perl and extend with Moose,#!/usr/bin/perl { package TalkativeInt; use 5.010; use strict;use warnings; use base qw/Math::BigInt/; sub talk { say "I say ". $_[0]->value; } sub value { $_[0]->bstr(); } 1; } use 5.010; use strict;use warnings; my $p=TalkativeInt->new(7); $p->talk;
Do you have opportunity to use apply_all_roles in real world? This is just my curiosity.#!/usr/bin/perl { package TalkativeInt; use 5.010; use Moose; extends 'Math::BigInt'; sub talk { say "I say ". $_[0]->value; } sub value { $_[0]->bstr(); } 1; } use 5.010; use strict;use warnings; my $p=TalkativeInt->new(7); $p->talk;
I really enjoy your Moose, ternary tree, lazy worker, I learned a lot.
regards
In Section
Seekers of Perl Wisdom