Perl en Español

  1. Home
  2. Tutoriales
  3. Foro
  4. Artículos
  5. Donativos
  6. Publicidad
 

Aprendiz de Perl

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Básico
Mensaje Jue Mar 16, 2006 8:33 am
CID
Perlero Nuevo
Perlero Nuevo
Registrado: 16 Mar 2006
Mensajes: 5
Aprendiz de Perl Responder citando

Buenos dias desde Argentina. Soy el usuario máss nuevo (hasta la fecha) de ésta comunidad.
Soy programador hace años y llegado éste momento, y con más experiencia he decidido escoger entre unos cuantos lenguajes para perfeccionarme, entre los cuales está Perl.
Utilizo Windows por lo que utilizo Perl de Active (no se si existe otro para Windows, esa es una de mis dudas). En definitiva, quiero aprender Perl, en lenguajes de scripts tengo cierta experiencia con php y python. Lo que pregunto es:
- Existe algún resumen (no un tutorial completo, algo acelerado) sobre Perl?
- Que tipo de aplicaciones (las más frecuentes) se realizan (ustedes han realizado) utilizando éste lenguaje?
- Tiene futuro Perl? en que ámbito?

Más allá de eso, los felicito por ésta iniciativa de tener una comunidad de Perl en castellano.
Gracias y Saludos!!
Mensaje Jue Mar 16, 2006 9:02 am
CID
Perlero Nuevo
Perlero Nuevo
Registrado: 16 Mar 2006
Mensajes: 5
Responder citando

Algo más...

Que significa esto?

Código:
#!/usr/local/bin/perl


Es un comentario? una directiva?
En windows sirve para algo? en linux para que sirve?
en definitiva, que es??

Saludos!
Mensaje Jue Mar 16, 2006 10:21 am
monoswim
Vive para Perl en Español
Vive para Perl en Español
Registrado: 18 Nov 2003
Mensajes: 716
Ubicación: Buenos Aires
Responder citando

Hola antes que nada bienvenido a los foros y aguante charly garcía !!!

Ahora bien, PERL últimamente se hizo muy famoso por su facilidad para hacer aplicaciones web, tendría la misma funcionalidad que PHP o ASP en ese sentido, solo que es un lenguaje mucho más serio, más potente digamos...

Tutoriales hay muchos, buscá en google que encontrarás muuuchos o en el emule puedes bajar libros enteros...En el ámbito web para mi tiene mucho futuro, o más bien presente, hay aplicaciones muy buenas hechas en PERL, sobre todo las importantes como cpanel, ispconfig y demás...

que más ? esa línea que aparece al principio contiene la dirección del intérprete de perl, en tu caso deberías poner algo así como #!c:/perl/bin/perl.exe

Si está mal esa dirección el script no se ejecuta...

Espero que te sirva

Saludos
Mensaje Jue Mar 16, 2006 10:27 am
CID
Perlero Nuevo
Perlero Nuevo
Registrado: 16 Mar 2006
Mensajes: 5
Responder citando

Gracias por responder tan rápido.

Estaba probando lo de la linea comentada hacia el interprete de perl. Tanto en windows como en linux cree éste simple archivo:

print "Hola mundo!\n";

sin colocar la linea hacia el interprete, y en los dos casos me lo toma. No será solo un simple comentario??

Una pregunta más, a que se debe que deba colocar el salto de linea todo el tiempo?\n
En algunos scripts he visto que la colocan doble. A que se debe ésto?

Gracias de nuevo!
Mensaje Jue Mar 16, 2006 12:05 pm
explorer
Moderador
Moderador
Registrado: 24 Jul 2005
Mensajes: 4128
Ubicación: Valladolid, España
Re: Aprendiz de Perl Responder citando

CID escribió:
- Existe algún resumen (no un tutorial completo, algo acelerado) sobre Perl?

Google es tu amigo: Tutoriales.
Y para aprender, uno de los primeros sitios a visitar es el propio sitio de Perl sobre aprendizaje.
Y naturalmente, en la sección de Tutoriales, de esta web.

CID escribió:
- Que tipo de aplicaciones (las más frecuentes) se realizan (ustedes han realizado) utilizando éste lenguaje?

Pues... de todo... desde filtrar ficheros de texto hasta detectar fuegos en tiempo real.

CID escribió:
- Tiene futuro Perl? en que ámbito?

Perl es el sexto lenguaje más utilizado, pero está pasando por una crisis...
Crisis debida a que este lenguaje no está soportado por ninguna gran empresa, como lo puede ser IBM y Sun con el Java, o el C# con Microsoft. Apenas hay un puñado de empresas que pueden dar soporte empresarial, como la de ActiveState. Se puede decir que el único soporte serio es la propia comunidad y sus programadores.
El futuro de Perl es incierto. Por una parte la versión 6 está casi a punto pero le faltan meses de rodaje. El mercado de Perl actual ha bajado 2,73% con respecto al año pasado, estando ahora a los mismos niveles que hace 5 años. En algunos países es completamente desconocido. El número de libros, aunque suficientes, no se publican a la misma velocidad que la de los otros lenguajes que están en la cresta de la ola (de la popularidad).
Al final es cuestión personal. Quiero decir que yo seguiré usando Perl porque me sirve para mi trabajo casero y profesional, en multitud de ámbitos. Encontrar una solución clara, rápida y sencilla, eso es para mí lo que me ofrece.
Con la cantidad de recursos disponibles en CPAN, no hay que tener miedo en quedarse 'huerfano' (al menos durante años).
Como suelo decir: Los programadores que olvidan la Historia, están condenados a aprender Java.
Mensaje Jue Mar 16, 2006 12:43 pm
explorer
Moderador
Moderador
Registrado: 24 Jul 2005
Mensajes: 4128
Ubicación: Valladolid, España
Responder citando

CID escribió:
Que significa esto?
Código:
#!/usr/local/bin/perl

Es un comentario? una directiva?
En windows sirve para algo? en linux para que sirve?
en definitiva, que es??

Es un truco...

Resulta que en la mayoría de los programas en script usan el caracter '#' como inicio de comentario, así que lo que estamos viendo es en realidad... un comentario de un programa.

PERO aprovechando que es un comentario, a alguien se le ocurrió la maravillosa idea de colocar allí el camino al programa que interpretará el resto del código.

Quiero decir que puso al lado del '#' un caracter '!', y siendo estos dos bytes los dos primeros del fichero, sólo tenemos que indicar al sistema operativo que, cuando el usuario desee ejecutar este fichero, lo primero que tiene que hacer es mirar si los dos primeros bytes son el 0x23 y el 0x21 (esto en informática se le llama número mágico). Si son esos, entonces en vez de ejecutarlo como un binario más, lo que hará será ejecutar el intérprete que sigue a '#!', pasándole como primer argumento nuestro programa.

Un ejemplo. Si tenemos este código
Código:
print "Hola CID!!!\n";
y lo guardamos como cid.pl, para ejecutarle necesitamos escribir
Código:
/usr/bin/perl cid.pl
O podemos escribirlo de esta otra manera:
Código:
#!/usr/bin/perl
print "Hola CID!!!\n";
luego darle al fichero los permisos de ejecución como si fuera un binario mas (chmod 755 cid.pl) y ejecutarlo directamente:
Código:
cid.pl


A la combinación '#!' se le llama Shebang.

En Windows, a pesar de que tiene también el sistema de 'número mágico' para identificar de qué tipo es el programa que estamos intentando ejecutar, no suele tener asociado nada cuando ve '#!', por lo que tenemos que usar otro truco, que es el de asociar la extensión de los archivos (.pl) a la operación abrir (Open) con el ejecutable Perl.exe. Todo esto lo suelen hacer los paquetes Perl en cuanto los instalan en Windows, como el de ActiveState, así que nosotros ni nos damos cuenta.

En caso de que tengamos que hacer estas operaciones manualmente, sólo hay que acordarse de:
* Ir a la variable de entorno del sistema PATH y agregarle el camino al lugar donde reside el perl.exe. Seguramente también tendremos que definir la varible PERL5LIB para que apunte al subdirectorio C:\Perl\lib o algo parecido, para que el Perl pueda encontrar las librerías básicas para funcionar.
* Pulsar con doble click en un archivo .pl. Si el windows no sabe qué hacer, nos preguntará con qué programa hay que abrirlo. En ese momento tenemos que decidir si queremos que lo ejecute directamente con Perl (Open perl.exe) o con otro programa, como puede ser un editor de texto (Open edit.exe). Más tarde, en opciones de Carpeta, pestaña Ver, podremos cambiar estas opciones y poner otras (en caso de doble click, ejecutarlo, pero si se pulsa con el botón derecho, ofrecer la opción de editarlo con otro programa).

En definitiva, en Windows podríamos pasar de él, PERO es SIEMPRE recomendable ponerlo, porque... tus programas no siempre van a estar en Windows...

Más información sobre '#!' en windows.
Mensaje Jue Mar 16, 2006 12:51 pm
explorer
Moderador
Moderador
Registrado: 24 Jul 2005
Mensajes: 4128
Ubicación: Valladolid, España
Responder citando

CID escribió:
Una pregunta más, a que se debe que deba colocar el salto de linea todo el tiempo?\n

Pues porque los ordenadores sólo hacen lo que se les pide... o visto de otra forma, ¿cómo sabría el ordenador que la frase que queremos imprimir tiene retorno de carro o no? No es lo mismo sacar una frase completa -y entonces sí que es necesario el fin de línea-, que sacar la frase "Espere por favor...", hacer unas cuentas, y luego sacar un retorno de carro y otra frase como "Fin del cálculo".

Aquí Perl tiene un detalle para ahorrarnos el trabajo de poner "\n" en todos los finales de línea.
Si en la cabecera del programa pones un '-l' entonces Perl lo hará por tí:
Código:
#!/usr/bin/perl -l
print "Hora CID!!!";
print "¿Qué tal?";

CID escribió:
En algunos scripts he visto que la colocan doble. A que se debe ésto?
Pues porque el programador quiere o necesita que en ese lugar o momento salgan dos retornos de carro. Los dos ejemplos más clásicos son los correos electrónicos y las cabeceras de las peticiones HTTP. Ejemplo:
Código:
# Fin de la cabecera HTTP:
print "Content-Type: text/html\n\n";
# Ahora sigue la página HTML...
Mensaje Jue Mar 16, 2006 2:02 pm
CID
Perlero Nuevo
Perlero Nuevo
Registrado: 16 Mar 2006
Mensajes: 5
Responder citando

Perfecto, solo me están quedando tres preguntas de aprendiz.
1) Existe un IDE con autocompletado para Perl y que sea gratuito?
2) Es posible generar un código compilado (es decir binario, no fuente)?
3) Donde puede encontrar la lista de parámetros para el interprete? tales como -l, etc... (ni siquiera se que nombre tienen esos parámetros en la jerga de Perl).

Simplemente eso, y creo que si posteo de nuevo lo haré en un post aparte con preguntas ya un poco más interesantes.
Gracias de nuevo, de verdad. Una excelente comunidad, los felicito.
Mensaje Jue Mar 16, 2006 2:16 pm
explorer
Moderador
Moderador
Registrado: 24 Jul 2005
Mensajes: 4128
Ubicación: Valladolid, España
Responder citando

CID escribió:
1) Existe un IDE con autocompletado para Perl y que sea gratuito?
Perl Development Tools.
CID escribió:
2) Es posible generar un código compilado (es decir binario, no fuente)?
Si. Busca en este web por la palabra perl2exe. Hay más opciones...
CID escribió:
3) Donde puede encontrar la lista de parámetros para el interprete? tales como -l, etc... (ni siquiera se que nombre tienen esos parámetros en la jerga de Perl).
Toda la documentación de Perl está en Perldoc. En concreto, las opciones de ejecución que se pueden usar está en perlrun.
Mensaje Jue Mar 16, 2006 2:37 pm
CID
Perlero Nuevo
Perlero Nuevo
Registrado: 16 Mar 2006
Mensajes: 5
Responder citando

Muchas gracias de nuevo!
Mensaje Jue Mar 16, 2006 2:38 pm
kidd
Creador de Perl en Español
Creador de Perl en Español
Registrado: 15 Oct 2003
Mensajes: 1389
Ubicación: México
Re: Aprendiz de Perl Responder citando

Hola CID:

Bienvenido al foro, ya te han respondido bastante bien tus preguntas, así que yo solo quería complementar en algunos puntos.


CID escribió:
- Que tipo de aplicaciones (las más frecuentes) se realizan (ustedes han realizado) utilizando éste lenguaje?


Así como dice Monoswim, Perl sirve para una infinidad de cosas más que solamente hacer aplicaciones para la web, por ejemplo, dentro del sitio podrás encontrar algunos tutoriales de cosas interesantes que puedas hacer con Perl:

- Puedes hacer interfaces gráficas
- Crear robots
- Hacer complejos sistemas para sitios dinámicos

Yo he hecho diversas aplicaciones, lógicamente dentro de las que más me piden son aquellas que tengan que ver con base de datos, ya sea manejo de inventarios, administración de usuarios, etc.

También he creado buscadores de texto, chats basados en Perl, sistemas CMS, scripts para automatizar servicios de servidores, etc.


CID escribió:
- Tiene futuro Perl? en que ámbito?


En lo personal yo le veo muy buen futuro a Perl, considero que el mayor problema que tiene Perl es la mala fama que se le ha dado considerandolo solamente un lenguaje que sirve para hacer aplicaciones web o CGIs, cuando la verdad es contraria.

Uno de las grandes ventajas que tiene el lenguaje es la gran contribución que hacen los mismos usuarios programadores, ejemplo de ello es CPAN donde podrás encontras cientos de módulos que hacen cosas tan variadas como manejar sesiones, o crearte una baraja de Poker.


Saludos
Mensaje Dom Mar 19, 2006 4:01 am
explorer
Moderador
Moderador
Registrado: 24 Jul 2005
Mensajes: 4128
Ubicación: Valladolid, España
Re: Aprendiz de Perl Responder citando

CID escribió:
- Existe algún resumen (no un tutorial completo, algo acelerado) sobre Perl?

Utilizando Perl
Publicar nuevo tema   Responder al tema    Foros de discusión -> Básico Todas las horas son GMT - 6 Horas
Página 1 de 1



Powered by phpBB © 2001, 2005 phpBB Group