From franjvasquezg at gmail.com Fri Dec 10 10:43:57 2010 From: franjvasquezg at gmail.com (francisco vasquez) Date: Fri, 10 Dec 2010 10:43:57 -0800 Subject: [caracas-pm] francisco vasquez desea chatear Message-ID: ----------------------------------------------------------------------- francisco vasquez quiere estar en contacto utilizando algunos productos nuevos de Google. Si ya tienes Gmail o Google Talk, visita: http://mail.google.com/mail/b-b8fa57bb18-929fdaeb05-rPjEs2RnVE7gwp3BfBrPvsg0-6E Tendr?s que hacer clic en este enlace para poder chatear con francisco vasquez. Para hacerte con Gmail (una cuenta de correo electr?nico gratuita de Google, con m?s de 2.800 megabytes de capacidad de almacenamiento) y chatear con francisco vasquez, visita: http://mail.google.com/mail/a-b8fa57bb18-929fdaeb05-rPjEs2RnVE7gwp3BfBrPvsg0-6E Gmail ofrece: - mensajer?a instant?nea dentro de Gmail, - protecci?n eficaz frente a spam, - una funci?n de b?squeda integrada para buscar mensajes y un ?til sistema para organizar los mensajes en "conversaciones", - adem?s es una aplicaci?n sin anuncios emergentes ni banners no orientados; s?lo tiene anuncios de texto e informaci?n relacionada que son relevantes dado el contenido de tus mensajes. Todo esto de manera gratuita. Pero espera, ?a?n hay m?s! Al abrir una cuenta de Gmail, podr?s acceder a Google Talk, el servicio de mensajer?a instant?nea de Google: http://www.google.com/talk/intl/es/ Google Talk te ofrece: - un servicio de chat web que podr?s utilizar desde cualquier sitio, sin necesidad de descargar nada, - una lista de contactos sincronizada con tu cuenta de Gmail, - llamadas de voz de PC a PC gratuitas y de alta calidad, al descargar el cliente de Google Talk. Trabajamos duro para a?adir nuevas funciones y realizar mejoras, as? que es posible que te pidamos que nos env?es comentarios o sugerencias de forma peri?dica. Agradecemos tu ayuda para mejorar nuestros productos. Gracias, El equipo de Google Para obtener m?s informaci?n sobre Gmail y Google Talk, visita: http://mail.google.com/mail/help/intl/es/about.html http://www.google.com/talk/intl/es/about.html Si al hacer clic en las URL de este mensaje no se abren los enlaces correspondientes, c?pialas y p?galas en la barra de direcciones de tu navegador. From franjvasquezg at gmail.com Mon Dec 13 07:26:24 2010 From: franjvasquezg at gmail.com (francisco vasquez) Date: Mon, 13 Dec 2010 07:26:24 -0800 Subject: [caracas-pm] francisco vasquez desea chatear Message-ID: ----------------------------------------------------------------------- francisco vasquez quiere estar en contacto utilizando algunos productos nuevos de Google. Si ya tienes Gmail o Google Talk, visita: http://mail.google.com/mail/b-b8fa57bb18-9072d3983d-Ssn5E_PSpIJ7gRoKZW7ja3bnSlU Tendr?s que hacer clic en este enlace para poder chatear con francisco vasquez. Para hacerte con Gmail (una cuenta de correo electr?nico gratuita de Google, con m?s de 2.800 megabytes de capacidad de almacenamiento) y chatear con francisco vasquez, visita: http://mail.google.com/mail/a-b8fa57bb18-9072d3983d-Ssn5E_PSpIJ7gRoKZW7ja3bnSlU Gmail ofrece: - mensajer?a instant?nea dentro de Gmail, - protecci?n eficaz frente a spam, - una funci?n de b?squeda integrada para buscar mensajes y un ?til sistema para organizar los mensajes en "conversaciones", - adem?s es una aplicaci?n sin anuncios emergentes ni banners no orientados; s?lo tiene anuncios de texto e informaci?n relacionada que son relevantes dado el contenido de tus mensajes. Todo esto de manera gratuita. Pero espera, ?a?n hay m?s! Al abrir una cuenta de Gmail, podr?s acceder a Google Talk, el servicio de mensajer?a instant?nea de Google: http://www.google.com/talk/intl/es/ Google Talk te ofrece: - un servicio de chat web que podr?s utilizar desde cualquier sitio, sin necesidad de descargar nada, - una lista de contactos sincronizada con tu cuenta de Gmail, - llamadas de voz de PC a PC gratuitas y de alta calidad, al descargar el cliente de Google Talk. Trabajamos duro para a?adir nuevas funciones y realizar mejoras, as? que es posible que te pidamos que nos env?es comentarios o sugerencias de forma peri?dica. Agradecemos tu ayuda para mejorar nuestros productos. Gracias, El equipo de Google Para obtener m?s informaci?n sobre Gmail y Google Talk, visita: http://mail.google.com/mail/help/intl/es/about.html http://www.google.com/talk/intl/es/about.html Si al hacer clic en las URL de este mensaje no se abren los enlaces correspondientes, c?pialas y p?galas en la barra de direcciones de tu navegador. From emhnemhn at gmail.com Thu Dec 16 07:12:05 2010 From: emhnemhn at gmail.com (Ernesto =?ISO-8859-1?Q?Hern=E1ndez-Novich?=) Date: Thu, 16 Dec 2010 10:42:05 -0430 Subject: [caracas-pm] =?iso-8859-1?q?=BFAlgo_para_el_s=E1bado=3F?= Message-ID: <1292512325.3714.63.camel@deepthought.ius.cc> Podr?amos hacer como que "casualmente" coincidimos el s?bado para una reuni?n social de fin de a?o... -- Ernesto Hern?ndez-Novich - @iamemhn - Unix: Live free or die! Geek by nature, Linux by choice, Debian of course. If you can't aptitude it, it isn't useful or doesn't exist. GPG Key Fingerprint = 438C 49A2 A8C7 E7D7 1500 C507 96D6 A3D6 2F4C 85E3 From emhnemhn at gmail.com Thu Dec 16 08:15:05 2010 From: emhnemhn at gmail.com (Ernesto =?ISO-8859-1?Q?Hern=E1ndez-Novich?=) Date: Thu, 16 Dec 2010 11:45:05 -0430 Subject: [caracas-pm] Divertimento Message-ID: <1292516105.3714.73.camel@deepthought.ius.cc> ?Qu? calculan wtf y wtffff? ?Qu? calculan hell y hellll? ?Por qu? las segundas versiones son m?s eficientes que las primeras? Suerte haciendo trampa con el debugger... #!/usr/bin/perl use strict; use warnings; use feature qw(say); # Aquello que le falta a HTML para ser lenguaje de programaci?n. sub way { my $f = shift; sub { $f->(way($f))->(@_) }; } # Es esa funci?n, escrita de aquella manera. sub wtf { way( sub { my $r = shift; sub { my $n = shift; ($n < 2) ? 1 : $n * $r->($n-1) } } )->(shift); } # La misma anterior, pero con aquello de cola con acumulador. sub wtffff { way( sub { my $r = shift; sub { my ($n,$a) = @_; $n ? $r->($n-1,$a*$n) : $a } } )->(shift,1); } # La otra funci?n, escrita de aquella manera sub hell { way( sub { my $r = shift; sub { my $n = shift; ($n < 2) ? 1 : $r->($n-1) + $r->($n - 2) } } )->(shift); } # La otra funci?n, pero con aquello de cola y entuplado. sub hellll { way( sub { my $r = shift; sub { my ($n,$a,$b) = @_; ($n < 2) ? $b : $r->($n-1,$b,$a+$b) } } )->(shift,1,1); } say wtf( 4 ); say wtffff( 4 ); say hell( 5 ); say hellll( 5 ); Por cierto, el t?rmino t?cnico es reificaci?n de "aquello". -- Ernesto Hern?ndez-Novich - @iamemhn - Unix: Live free or die! Geek by nature, Linux by choice, Debian of course. If you can't aptitude it, it isn't useful or doesn't exist. GPG Key Fingerprint = 438C 49A2 A8C7 E7D7 1500 C507 96D6 A3D6 2F4C 85E3 From deruvo at gmail.com Thu Dec 16 08:41:59 2010 From: deruvo at gmail.com (Pascual Daniel De Ruvo Zubillaga) Date: Thu, 16 Dec 2010 12:11:59 -0430 Subject: [caracas-pm] =?iso-8859-1?q?=BFAlgo_para_el_s=E1bado=3F?= In-Reply-To: <1292512325.3714.63.camel@deepthought.ius.cc> References: <1292512325.3714.63.camel@deepthought.ius.cc> Message-ID: De acuerdo 2010/12/16 Ernesto Hern?ndez-Novich : > Podr?amos hacer como que "casualmente" coincidimos el s?bado para una > reuni?n social de fin de a?o... > -- > Ernesto Hern?ndez-Novich - @iamemhn - Unix: Live free or die! > Geek by nature, Linux by choice, Debian of course. > If you can't aptitude it, it isn't useful or doesn't exist. > GPG Key Fingerprint = 438C 49A2 A8C7 E7D7 1500 C507 96D6 A3D6 2F4C 85E3 > > _______________________________________________ > caracas-pm mailing list > caracas-pm at pm.org > http://mail.pm.org/mailman/listinfo/caracas-pm From fobispo at isc.org Fri Dec 17 15:38:41 2010 From: fobispo at isc.org (Francisco Obispo) Date: Fri, 17 Dec 2010 15:38:41 -0800 Subject: [caracas-pm] Divertimento In-Reply-To: <1292516105.3714.73.camel@deepthought.ius.cc> References: <1292516105.3714.73.camel@deepthought.ius.cc> Message-ID: Hola Ernesto, Gracias por el ejercicio, sirve para prestar atenci?n de cerca. Esta es mi interpretaci?n.. On Dec 16, 2010, at 8:15 AM, Ernesto Hern?ndez-Novich wrote: way() es quien efectivamente "ejecuta" el codigo > ?Qu? calculan wtf y wtffff? Factoriales [1] > ?Qu? calculan hell y hellll? Numero de Fibonacci en la posici?n que le pases de argumento [2] > ?Por qu? las > segundas versiones son m?s eficientes que las primeras? porque el uso de acumuladores sirven de "memoria" para que no tengan que iterar tantas veces [1] http://en.wikipedia.org/wiki/Factorial [2] http://en.wikipedia.org/wiki/Fibonacci_number Francisco Obispo Hosted@ Programme Manager email: fobispo at isc.org Phone: +1 650 423 1374 || INOC-DBA *3557* NOC Key fingerprint = 532F 84EB 06B4 3806 D5FA 09C6 463E 614E B38D B1BE From emhnemhn at gmail.com Tue Dec 21 09:46:33 2010 From: emhnemhn at gmail.com (Ernesto =?ISO-8859-1?Q?Hern=E1ndez-Novich?=) Date: Tue, 21 Dec 2010 13:16:33 -0430 Subject: [caracas-pm] Divertimento In-Reply-To: References: <1292516105.3714.73.camel@deepthought.ius.cc> Message-ID: <1292953593.3714.183.camel@deepthought.ius.cc> On Fri, 2010-12-17 at 15:38 -0800, Francisco Obispo wrote: > On Dec 16, 2010, at 8:15 AM, Ernesto Hern?ndez-Novich wrote: > > way() es quien efectivamente "ejecuta" el codigo > > > ?Qu? calculan wtf y wtffff? > > Factoriales [1] As? es. > > ?Qu? calculan hell y hellll? > > Numero de Fibonacci en la posici?n que le pases de argumento [2] As? es. > > ?Por qu? las segundas versiones son m?s eficientes que las primeras? > > porque el uso de acumuladores sirven de "memoria" para que no tengan que iterar tantas veces Al usar argumentos acumuladores, las llamadas recursivas pueden retornar directamente al invocante dado que no quedan c?lculos pendientes. Eso se llama recursi?n de cola y en lenguajes que saben optimizarla, independientemente de la profundidad de la recursi?n, el espacio de pila es O(1). Calcular el 42-?simo n?mero de Fibonacci seguramente har? que se quede sin memoria cualquier m?quina con 2-4Gb de RAM, pues debe utilizarla para representar la pila de ejecuci?n. Perl5 a?n no tiene optimizaci?n autom?tica de recursi?n de cola. Perl5 ofrece una forma especial de goto que permite sustituir el registro de activacion actual, por el registro de activaci?n de una llamada recursiva, efectivamente logrando modelar recursi?n de cola *manualmente*; si bien el uso de ese estilo de goto est? asociado usualmente a la magia de AUTOLOAD(), puede aplicarse en estos casos. Por supuesto que tanto el factorial como Fibonacci pueden escribirse iterativamente para que operen en espacio constante, pero hay algunos algoritmos que son inherentemente recursivos y que pueden convertirse parcialmente a recursi?n de cola para hacerlos ligeramente m?s eficientes. A?n queda explicar por qu? la funci?n way() es la que efectivamente hace que "las cosas pasen" :-) -- Ernesto Hern?ndez-Novich - @iamemhn - Unix: Live free or die! Geek by nature, Linux by choice, Debian of course. If you can't aptitude it, it isn't useful or doesn't exist. GPG Key Fingerprint = 438C 49A2 A8C7 E7D7 1500 C507 96D6 A3D6 2F4C 85E3