[Cascavel-pm] Transformando em objeto
Nilson Santos Figueiredo Junior
acid06 em gmail.com
Quinta Novembro 30 06:21:30 PST 2006
On 11/30/06, Lorn <lorn.br em gmail.com> wrote:
> É, eu já vi discussões como esta, principalmente contra o Java que mantem os
> metodos primitivos dele ( int, etc ) e o pessoal do Ruby dizendo que se você
> digitar 1. aparece os metodos do numero 1 O_o
Isso é porque em Ruby (e em Python também [e obviamente em SmallTalk))
tudo são first-class objects. Isso significa que um "1" ou uma
"string" qualquer são objetos de verdade. Assim como funções e as
próprias classes.
Note que boa parte disso pode ser feito em Perl também, através de
autoboxing. ;-)
Alguns exemplos da manpage do módulo:
use autobox;
# integers
my $range = 10->to(1); # [ 10, 9, 8, 7, 6, 5, 4, 3, 2, 1 ]
# floats
my $error = 3.1415927->minus(22/7)->abs();
Mais em: http://search.cpan.org/~chocolate/autobox-1.10/autobox.pm
Perl6 tenta sanar essa deficiência do Perl5, mas eu não sei exatamente
até que ponto as coisas serão first-class objects ou não. *Acho* que
em Perl6 tudo será também.
-Nilson Santos F. Jr.
Mais detalhes sobre a lista de discussão Cascavel-pm