• Publicidad

Mi opinión sobre Perl

¿Tienes algo interesante que decir? ¿O quizá algo no tan interesante? Aquí tenemos un espacio para compartir todo lo que queramos decir y que no cabe en ninguno de los otros foros.

Re: Mi opinión sobre Perl

Notapor explorer » 2011-02-19 16:29 @728

gerkrt escribiste:Solo un detalle: a mi no me apasiona el Python, prefiero el Ruby o Perl
Bueno, sigues estando de suerte: Inline::Ruby.

gerkrt escribiste:Nota que el end es en sí, más largo de escribir que el '{}', pero personalmente me gusta más.
Ahora mismo no me acuerdo, pero creo que hace años vi un ejemplo de 'end' en Perl, usando un módulo que filtraba el código del programa Perl. Pero no he vuelto a leer nada al respecto, supongo que porque escribir Perl como algo que no es Perl, no deja de ser algo poco productivo (para una empresa, es primordial que todos los programadores escriban el mismo tipo de código. Para Perl, lo recomendable es seguir las recomendaciones del libro PBP comentado antes).

gerkrt escribiste:De nuevo me refiero a Ruby diciendo que cuando tu pasas un array a una función no pasas el dato entero, sino la referencia, pero el manejo de ésta es automática.
Bueno, en Perl puedes hacer algo parecido:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. sub metodo(\@);      # declaramos nuestro método, que admite solo una ref. a un array
  2.  
  3. @x = 1..4;           # creamos un array
  4.  
  5. metodo @x;           # llamamos al método. No hacen falta ni paréntesis,
  6.                      # porque Perl sabe cuántos argumentos necesita.
  7.                      # Estamos escribiendo un array, como argumento, pero Perl lo pasará como referencia
  8.  
  9. sub metodo (\@) {    # definición del método
  10.     my @valores = @{ $_[0]} };  # solo estamos pasando un argumento, y lo desreferenciamos a un array privado
  11.  
  12.     say join q[-], @valores;
  13. }
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4


gerkrt escribiste:No sé si existirá, pero podrías escribir algún tipo de FAQ o algo así con este tipo de cosas.
De momento, lo único que hay son estos mismos foros. Y con el uso de Google se localiza (casi) todo.

gerkrt escribiste:P.D.: ¿no hay ningún módulo que mejore el uso de argumentos de las sub(), o algo así?
Hay unos cuantos módulos que intentan esconder la necesidad de "desplegar" los argumentos pasados. Por ejemplo, selfvars:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1.     package MiClase;
  2.  
  3.     ### Importa $self, @args, %opts y %hopts:
  4.     use selfvars;
  5.  
  6.     ### Creamos el constructor de la forma normal:
  7.     sub new {
  8.         return bless({}, shift);
  9.     }
  10.  
  11.     ### Usamos $self en lugar de $_[0]:
  12.     sub foo {
  13.         $self->{foo};
  14.     }
  15.  
  16.     ### Usamos @args en lugar de @_[1..$#_]:
  17.     sub bar {
  18.         my ($foo, $bar) = @args;
  19.         $self->{foo} = $foo;
  20.         $self->{bar} = $bar;
  21.     }
  22.  
  23.     ### Usamos %opts en lugar de %{$_[1]}:
  24.     sub baz {
  25.         $self->{x} = $opts{x};
  26.         $self->{y} = $opts{y};
  27.     }
  28.     ### Usamos %hopts con la sintaxis $obj->yada( x => 1, y => 2 )
  29.     sub yada {
  30.         $self->{x} = $hopts{x}
  31.         $self->{y} = $hopts{y}
  32.     }
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4


Por último, creo que te gustará echarle un vistazo a un entorno de trabajo para POO completo en Perl: Spiffy:
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1.     package Keen;
  2.     use Spiffy -Base;
  3.     field 'mirth';
  4.     const mood => ':-)';
  5.    
  6.     sub happy {
  7.         if ($self->mood eq ':-(') {
  8.             $self->mirth(-1);
  9.             print "Cheer up!";
  10.         }
  11.         super;
  12.     }
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4
Como ves, Spiffy te ahorra el poner la línea my $self = shift;, haciendo el código más parecido a otros lenguajes. Pero es mucho más que eso. Hay unos cuantos módulos que hacen uso de él. Un ejemplo: Algorithm::SocialNetwork. Spiffy, además, ofrece los mixins del Ruby y otras características de Python, Java y Perl 6. A lo mejor es lo que estabas buscando ;)
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Publicidad

Re: Mi opinión sobre Perl

Notapor gerkrt » 2011-02-19 17:50 @784

Gracias por los tocho posts. Todo más que aclarado entonces, prácticamente todo está solucionado, según veo. He estado ojeando los módulos Inline y, ¡joder!, son muy interesantes.
gerkrt
Perlero nuevo
Perlero nuevo
 
Mensajes: 33
Registrado: 2010-11-22 21:43 @946

Re: Mi opinión sobre Perl

Notapor explorer » 2011-02-22 08:40 @402

Pues cuando descubras autobox y perl5i...
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Mi opinión sobre Perl

Notapor danimera » 2011-02-22 21:45 @948

Pues en mi opinión las dos únicas cosas malas que tiene Perl, son:

1. Ya no me siento programador de Perl, ya que cualquier cosa que deseo está hecha, entonces :? tengo que escribir muy pocas cosas, más bien copio y pego (SOY PROGRAMADOR WEB EN Perl). En otras palabras: ya encuentro en Perl la solución a casi todos mis problemas y rara vez tengo que programar algo.

2. Hay tantas formas de hacer las cosas, que me demoro a veces más eligiendo la manera o el módulo, que en solucionar mi problema... :wink:
100% Telch - Perl Web Programming
Cali PerlMongers: http://cali.pm.org
Avatar de Usuario
danimera
Perlero frecuente
Perlero frecuente
 
Mensajes: 871
Registrado: 2005-06-23 19:02 @834
Ubicación: Colombia

Re: Mi opinión sobre Perl

Notapor explorer » 2011-02-23 08:21 @390

¿¿¿Cómo que está todo hecho???

¡¡¡Puff!!!

Cuando quieras, te mando trabajo para aburrir. Y no solo web. Solo tienes que ver la cantidad de aplicaciones que existen para Python/Java/.Net pero no para Perl.

Yo, ahora mismo, estoy aprendiendo a programar Perl sobre Android.

En cuanto a la elección del entorno de trabajo, es cierto que hay muchas posibilidades, pero lo normal es que te conviertas en experto en uno de ellos, para dar respuesta rápida a tus clientes. Y en los ratos libres te aprendes el siguiente entorno. Si el nuevo entorno es mejor, más rápido, más cómodo, pues ya tienes aliciente para hacerte experto en eso (a mí me costó pasarme de CGI a CGI::Application, pero me empeñé en hacer un par de webs de esa manera, y ahora entiendo lo potente que es. El siguiente paso, Dancer). Si el nuevo entorno no te gusta, pues te buscas otra cosa...

P.D. Los que estamos traduciendo la documentación de Perl en Español necesitaríamos la ayuda de algunos revisores, que solo la leyeran, y nos dijeran qué no entienden, qué está mal, o qué giros del idioma de sus países no son correctos.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Mi opinión sobre Perl

Notapor danimera » 2011-02-23 14:54 @662

Hay no explorer, digo para mis necesidades: ya que cualquier cosa que deseo está hecha,

Ahora sí, explorer, iniciaré a desarrollar para Android, pero lo que no sé, es que si todos los teléfonos con Android tienen Perl porque tengo que hacer una aplicación comercial, y no sé qué tanto pueda lograr con Perl...

Bueno, la aplicación solo es simple: es solo listar artículos de una página web pero desde Android, no desde el navegador...
100% Telch - Perl Web Programming
Cali PerlMongers: http://cali.pm.org
Avatar de Usuario
danimera
Perlero frecuente
Perlero frecuente
 
Mensajes: 871
Registrado: 2005-06-23 19:02 @834
Ubicación: Colombia

Re: Mi opinión sobre Perl

Notapor explorer » 2011-02-23 15:34 @690

Qué bueno que comiences con Android...

Te pongo unos enlaces para empezar, muy interesantes, pero lo principal es meterse con la API del sistema.

* Noticia del 24 de agosto de 2009, anunciando el soporte de Perl dentro del ASE (Android Scripting Extension). Pone de ejemplo un "Hola mundo":
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. use Android;
  2. my $a = Android->new();
  3. $a->makeToast("Hello, Android!");
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4

* Se puede ver el módulo Android aquí (son menos de 250 líneas) Lo que hacen es conectarse con JSON al servidor RPC (hecho en Java) del sistema.

* En mayo pasado, se escribió este artículo sobre una presentación de Perl en Android. Muestra un ejemplo de cómo sacar el listado de últimas posiciones geográficas.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Mi opinión sobre Perl

Notapor gerkrt » 2011-02-23 16:57 @748

¿¿Cómo que está todo hecho???

¡¡¡Puff!!!

Cuando quieras, te mando trabajo para aburrir. Y no solo web. Solo tienes que ver la cantidad de aplicaciones que existen para Python/Java/.Net pero no para Perl.

Yo,


No sé mucho sobre Perl pero quiero hacer algunos programas para aprenderlo bien. ¿Qué ideas o aplicaciones, módulos, etc. os vienen en mente para sacar?
gerkrt
Perlero nuevo
Perlero nuevo
 
Mensajes: 33
Registrado: 2010-11-22 21:43 @946

Re: Mi opinión sobre Perl

Notapor danimera » 2011-02-23 21:23 @933

Pero, explorer, Perl ya viene nativo en los celulares Android.
100% Telch - Perl Web Programming
Cali PerlMongers: http://cali.pm.org
Avatar de Usuario
danimera
Perlero frecuente
Perlero frecuente
 
Mensajes: 871
Registrado: 2005-06-23 19:02 @834
Ubicación: Colombia

Re: Mi opinión sobre Perl

Notapor explorer » 2011-02-24 05:20 @264

Sí, así es. Pero lo interesante no solo es poder ejecutar programas en línea de comandos, sino crear aplicaciones que puedas descargarte (en formato APK, por ejemplo) (proceso más detallado).

También hay un proyecto para portar Perl a Android (Proyecto Perldroid), pero todavía está dando sus primeros pasos.

Tienes más información a partir de los enlaces de la página del Perl 5 Wiki / Android.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

AnteriorSiguiente

Volver a Pasando el rato

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado

cron