[SP-pm] Hashes e arrays em Perl

Alexei Znamensky russoz at gmail.com
Tue Jun 21 18:38:23 PDT 2011


Tiago,

Respondendo ao seu questionamento, no entanto:

2011/6/21 Tiago Peczenyj <tiago.peczenyj em gmail.com>

> Gostei muito deste artigo
>
> http://altreus.blogspot.com/2011/06/its-as-if-they-thought-it-through.html
>
> Entretanto tenho uma dúvida: em Java, por exemplo, eu tenho uma
> coleção de interfaces para determinar o funcionamento de Lists e Maps,
> etc, e varias implementacões. No caso de Maps eu tenho o HashMap, o
> LinkedHashMap, o TreeMap, etc, que apesar de implementar uma interface
> comum possuem conceitos bem diferentes.
>
> O Hash (%) do Perl possui uma implementação padrão. Qual é?
>

A resposta curta e grossa é: não interessa. It simply works. Agora, se você
quiser realmente fuçar e descobrir qual é, é direto no código fonte do perl.
:-o)

Lendo em perldata(1), podemos ter algum indício de como é a implementação,
mas muito, muito vagamente. Caso você não conheça a estrutura de dados de
uma tabela de hash, como mostrada em um curso de computação, sugiro
fortemente que procure ler a respeito [1].


> Se eu quiser ter o mesmo comportamento que tenho em Java eu poderia
> utilizar Tie-Hashes com o meu algoritmo por trás. Encontrei alguns
> módulos no CPAN que fazem isso como o Tie::Hash::Sorted e o
> Tie::Hash::Cache::MRU mas o caminho é esse (usar Tie) ou seria mais
> interessante usar referencias a objetos e usar algum metodo get / set
> ?
>

Não existe nada igual a API de Collections do Java em Perl. Existem várias
coisas que podem ser usadas para dar o mesmo efeito, though.

[]s,
-- 
Alexei "RUSSOZ" Znamensky - russoz EM gmail com - http://russoz.org
GPG fingerprint = 42AB E78C B83A AE31 7D27  1CF3 C66F B5C7 71CA 9F3C
http://www.flickr.com/photos/alexeiz http://github.com/russoz


[1] http://en.wikipedia.org/wiki/Hash_table
-------------- Pr�xima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://mail.pm.org/pipermail/saopaulo-pm/attachments/20110621/23632e43/attachment-0001.html>


More information about the SaoPaulo-pm mailing list