🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: chile.comp.programacion
Article #1499

Re: Perl: analogo a #include ?

#1499
From: Miguel Farah
Date: Thu, 20 Jul 2006 15:42
64 lines
3963 bytes
Waldo wrote:
> Miguel Farah wrote:
>
> > Porque voy leyendo un archivo GEDCOM, segmento por segmento, que dice
> > cosas como esto:
> [...]
>
> No has dicho de que taman~o es el archivo, pero igual puedes hacer lo
> mismo que haces, salvo que en vez de imprimir cada item cuando lo lees,
> imprimes la tabla total al final. Me parece bastante mas limpio y te
> queda como lo que sugeria antes. Eso si, si las tablas tienen centenas
> de miles de elementos, puede ser un problema :-)

Lo pensé por el lado de "leo el dato, lo imprimo y me olvido de él".
Es
más sencillo de manejar, y no tiene tanta importancia que sea más o
menos limpio, pues se trata de datos generados en forma automática,
que
no se supone que deban ser leídos por un humano. Y si después hay que
hacer alguna clase de debugging, basta con hacer un print entremedio.
IMHO.

El archivo GEDCOM que yo manejo tiene 418 individuos y 106 familias,
que
no es mucho. He visto otros que tienen 4000+ individuos...


> [...]
> > Por esto, parte de las asignaciones son más fáciles de hacer si vas
> > lĂ­nea por lĂ­nea (las de hijos, en particular:
> > [$hijos{"356"}.="358,";]).
>
> Los puedes hacer linea por linea, pero nada (excepto taman~o) te obliga
> a _imprimirlos_ linea por linea, no?

No, nada me obliga.

> > con las conversiones posteriores [onda if "23" eq ("".$individuo) , con
> > $invididuo==63 ].
>
> Alguna razon por la que haces algo como "23" eq ("".$individuo) ? En

No, no lo hago. Es precisamente lo que evito. :-)

> Perl no es necesario "convertir" numeros a strings. Los numeros tienen

Lo sé. Lo que pasa es que no me gusta ese tratamiento (siempre he
preferido tipos de datos fuertes).


> siempre doble personalidad. Puedes hacer "23" eq $individuo, o 23 ==
> $individuo sin mas. (Internamente, un numero en Perl parte su vida como
> numero (guardado como int, o long, o lo que sea) pero adquiere una
> representacion como string automaticamente, cuando se necesita, y ambas
> conviven siempre. Cuando una de las dos cambia, la otra se invalida.
> Como consecuencia, un simple entero puede ocupar varias decenas de
> bytes internamente y en general es buena idea no hacer cosas como "23"
> eq $individuo, para evitar crear la otra representacion).
>
> > Como dice el viejo dicho, TMTOWTDI. :-)
>
> Me perdi. No conozco el dicho.

"There's More Than One Way To Do It."
Technical Details
Message-ID: <1153410176.752645.317820@s13g2000cwa.googlegroups.com>
Path: arc1-ca.pugleaf.net!g2news2.google.com!postnews.google.com!s13g2000cwa.googlegroups.com!not-for-mail
References: <1152650449.974331.107490@h48g2000cwc.googlegroups.com> <1152847994.871436.128160@h48g2000cwc.googlegroups.com> <1152891289.353750.194440@p79g2000cwp.googlegroups.com> <1153372834.177589.18650@m79g2000cwm.googlegroups.com>

Show Full Headers
Complete Article Headers
X-Google-Thread: 1593cb,1e0792ae33bdfe35
X-Google-Attributes: gid1593cb,public
X-Google-Language: SPANISH,ASCII
Path: arc1-ca.pugleaf.net!g2news2.google.com!postnews.google.com!s13g2000cwa.googlegroups.com!not-for-mail
From: "Miguel Farah" <miguel@farah.cl>
Newsgroups: chile.comp.programacion
Subject: Re: Perl: analogo a #include ?
Date: 20 Jul 2006 08:42:56 -0700
Organization: http://groups.google.com
Lines: 65
Message-ID: <1153410176.752645.317820@s13g2000cwa.googlegroups.com>
References: <1152650449.974331.107490@h48g2000cwc.googlegroups.com>
   <1152847994.871436.128160@h48g2000cwc.googlegroups.com>
   <1152891289.353750.194440@p79g2000cwp.googlegroups.com>
   <1153372834.177589.18650@m79g2000cwm.googlegroups.com>
NNTP-Posting-Host: 64.117.137.69
Mime-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
X-Trace: posting.google.com 1153410182 4190 127.0.0.1 (20 Jul 2006 15:43:02 GMT)
X-Complaints-To: groups-abuse@google.com
NNTP-Posting-Date: Thu, 20 Jul 2006 15:43:02 +0000 (UTC)
In-Reply-To: <1153372834.177589.18650@m79g2000cwm.googlegroups.com>
User-Agent: G2/0.2
X-HTTP-UserAgent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.1.4322),gzip(gfe),gzip(gfe)
X-HTTP-Via: 1.0 navegador (NetCache NetApp/6.0.3), 1.0 navegador (NetCache NetApp/6.0.3)
Complaints-To: groups-abuse@google.com
Injection-Info: s13g2000cwa.googlegroups.com; posting-host=64.117.137.69;
   posting-account=Gk5wgQwAAADH3zTvnNaPXDyNEGzIj-i1