¿Debe un recién llegado a Perl aprender tanto Perl 5 como 6? [cerrado]

21

Últimamente he empezado a jugar con Perl 5, y parece muy interesante. Me gustaría pasar un tiempo aprendiéndolo más a fondo cuando pueda.

Mi pregunta, ya que Perl 6 se está produciendo lentamente (creo ...) y se dice que rompe la compatibilidad con versiones anteriores, es esta: ¿estoy aprendiendo mejor Perl 5 y luego Perl 6, o estoy aprendiendo Perl 6 directamente, una mejor inversión de tiempo de acuerdo? ¿para ti?

Si los cambios de Perl 5 a 6 dificultan la comprensión de Perl 5, ciertamente debería comenzar con Perl 5 para poder leer scripts "antiguos", luego verifique Perl 6. También está el "Perl 6 aún no está completamente publicado "problema. Sé que hay una implementación de adopción temprana para Perl 6, pero si Perl 6 no se lanza oficialmente antes de algunos años más, me quedaré con 5 por ahora.

Ciertamente me gustaría tener una idea de esto. Siéntase libre de discutir cosas relacionadas. Mi interés en los lenguajes de script es bastante nuevo.

¡Gracias!

Joanis
fuente
3
Perl 6 aún no ha sido lanzado. Si necesita esto para "trabajo real", concéntrese en Perl 5.
Ir con los votos, después de todo este tiempo, pero muchas respuestas interesantes de la OMI. Me gusta que hayas traído la idea de que Perl 5 y 6 deberían considerar diferentes idiomas. ¡Gracias!
Joanis

Respuestas:

21

Perl 5 y Perl 6 son idiomas diferentes, no dos versiones de la misma. Perl 6 está fuertemente inspirado en Perl 5, pero no exclusivamente. Sugeriría centrarse en Perl 5 por ahora. Si observa la comunidad (sugeriría el agregador Planet Perl Iron Man , también verá publicaciones y contenido de la comunidad Perl 6 y podrá vigilarlo. Además, muchas características de Perl 6 están volviendo lentamente a Perl 5.

Además: a pesar del odio de algunas personas por Perl, ahora es 2010, ya no es 1995, y Perl ha avanzado inmensamente y continúa haciéndolo.

Phaylon
fuente
13

Sí a Perl 5

Claro, ve a aprender Ruby e incluso Python, pero Perl es diferente. E inteligente más allá de la razón. Perl es uno de esos idiomas en los que puedes aprender cosas que nunca quisiste y estar contento de haberlo hecho y, sin embargo, tendrás que volver a leer el libro Camel cada dos años solo para que no purgues completamente tus perlismos.

Perl es de sintaxis alienígena, incluso para los profesionales más experimentados. Personalmente, creo que expandirás tus horizontes con Perl.

Perl 5 es lo que considero que es Perl 1.5. Perl 6 es lo que considero Perl 2.0, tal vez incluso debería ser llamado algo diferente por completo, por lo que sí tanto 5 y 6 son vale la pena aprender por sí mismos y por sus propios méritos. Descargo de responsabilidad = Todavía estoy luchando con Perl6 yo mismo ...

Jé Queue
fuente
4

En respuesta a la pregunta en el titular: ¡sí!

Como señaló, centrarse en Perl 5 no es en absoluto una pérdida de tiempo, ya que la gran mayoría de ejemplos, tutoriales y aplicaciones en Perl serán de la rama 5.

Dicho esto, ciertamente deberías mantenerte al día con el proyecto Perl 6 y su progreso. Me tomé un tiempo para aprender Python 3 antes de su primer lanzamiento, solo para entender qué cambios se estaban haciendo y por qué. Esto me ayudó al migrar desde la base de código 2.x a 3.x.

No invertiría demasiado tiempo aprendiendo los entresijos de Perl 6; Una comprensión profunda de Perl 5 le servirá mejor por el momento. Pero una vez que se haya lanzado (siempre que sea sangriento), una comprensión básica de Perl 6 lo ayudará a seguir avanzando.

Bedwyr
fuente
3

Perl 5 es la línea estable, que probablemente se desarrollará en una línea diferente a la de Perl 6. Perl 6 probablemente tendrá que encontrar un nuevo nombre que Perl.

Perl 6 es, francamente, increíble . Pero aún no es lo suficientemente estable para el uso empresarial en la producción (al menos, por lo que entiendo). Por supuesto, estable en la empresa significa Perl 5.8 en mi experiencia ...

Paul Nathan
fuente
1

No aprendas Perl 6.

CPAN ni siquiera lo admite todavía. (Sospecho que se enviará con un módulo que permite que Duke Nukem Forever se juegue por completo mediante el uso de expresiones regulares ...)

Kevin Cantu
fuente
Jeje ... vapourware ftw!
Simon Whitaker
1
Perl 6 no usa expresiones regulares, usa reglas (¡y son increíbles!): En.wikipedia.org/wiki/Perl_6_rules
Gaurav
Nueva broma necesaria.
Sean McMillan
@SeanMcMillan ¿Una broma que hice el año pasado es vieja? : P (No puedo evitarlo si Duke Nukem Forever ha sido liberado en ese momento ...)
Kevin Cantu
1

Perl 5 es estable ahora y creo que primero se debe aprender la versión estable más reciente. La actualización a otra versión sería más fácil.

Abi
fuente
1

El mejor consejo: no, no, no! Perl 5 es el mejor en este momento ya que Perl 6 no está completamente desarrollado.

Dinámica
fuente
0

Si está interesado en los lenguajes de estilo de secuencias de comandos, sugeriría aprender Python y / o Ruby en su lugar. Aprendí Perl hace varios años. Lo principal que aprendí de él son las expresiones regulares. La mayoría de los otros lenguajes que han incorporado expresiones regulares son derivados de la implementación de Perl. Pero más allá de eso, no usé Perl para todo eso. La principal crítica de Perl es que algunos lo consideran un lenguaje de 'solo escritura'. Es muy difícil volver al código antiguo y comprender fácilmente lo que se hizo.

Es mi percepción de que se está progresando más con Python y Ruby (como Rails), que con Perl. Siempre es bueno estirar el cerebro y aprender un nuevo idioma, pero Perl probablemente no sería una sugerencia principal.

Erik
fuente
1
En realidad, javascript es el rey del script.
Daniel Little
Gracias por el aporte. Aparentemente, Perl sería una opción no tan buena hoy en día. Sin embargo, es curioso ... ¿Es tan fácil escribir frases ingeniosamente concisas en el indicador de comandos de shell con Python, Ruby y Javascript?
Joanis
3
Perl ha cambiado mucho desde los viejos tiempos. Y todavía hay muchas personas que optan por él y lo aprenden. Cosas como pruebas, documentación, interoperabilidad, retrocompatibilidad, estabilidad y un enfoque en una buena cadena de herramientas son atributos más modernos de Perl.
Phaylon
En mi experiencia, aprender Perl ayuda a aprender Ruby, ya que se comparten muchos conceptos.
justkt
Perge regexps PUEDE analizar HTML (o algo así)