[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