[Rio-pm] Objetos Moose vs NonMoose

Blabos de Blebe blabos em gmail.com
Quarta Setembro 12 07:32:59 PDT 2012


> Módulos criados com bless possuem um modelo diferente dos módulos que
> utilizam o Moose, certo?

Hein? Defina modelo.

> Alguém pode falar mais sobre objetos Moose vs NonMoose?
http://www.onyxneon.com/books/modern_perl/index.html


2012/9/12 Junior Moraes <juniiior182 em gmail.com>:
> Hi.
>
> Módulos criados com bless possuem um modelo diferente dos módulos que
> utilizam o Moose, certo?
> Na verdade não sei, mas era o que eu achava até então.
>
> Sempre achei que sendo diferentes, pra utilizarmos herança, o modelo do
> package seria incompatível um com o outro, e pra isso eu utilizava o módulo
> MouseX::NonMoose.
>
> Eis que fuçando um pouco o módulo Badger::Log::File, experimentei testar os
> method modifiers pra jogar a saída também pro STDERR:
>
> extends 'Badger::Log::File';
>
> after qw {
>         info
>         debug
>         warn
>         fatal
>         error
>     } => sub {
>     say STDERR $_[1];
> };
>
> Eis que fui ver a lista de deps do Badger::Log::File, e é gigante... Só que
> sem o Moose! Logo, pensei que isso não funcionaria mas funciona!
>
> Pra ilustrar melhor a situação:
>
> package Fvox;
> use common::sense;
> sub new {
>     bless {}, shift;
> }
>
> sub execute {
>     my $self = shift;
>     say 'Do...';
> }
>
> 1;
>
> package Junior;
>
> use Moose;
> extends 'Fvox';
>
> after 'execute' => sub {
>     say STDERR 'It works?!';
> };
>
> 1;
>
> my $fx = new Junior();
> $fx->execute();
>
>
>
>
> Alguém pode falar mais sobre objetos Moose vs NonMoose?
> Quais as incompatibilidades que eu poderia enfrentar, se isso não funcionava
> numas versões anteriores,  etc?
>
> --
>
>  ______________________
> < Junior "fvox" Moraes >
>  ----------------------
>    \
>     \
>         .--.
>        |o_o |
>        |:_/ |
>       //   \ \
>      (|     | )
>     /'\_   _/`\
>     \___)=(___/
>
>
>
> _______________________________________________
> Rio-pm mailing list
> Rio-pm em pm.org
> http://mail.pm.org/mailman/listinfo/rio-pm


Mais detalhes sobre a lista de discussão Rio-pm