Perl en Español

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

Otras formas

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Básico
Mensaje Mie Jul 23, 2008 4:06 am
loyvi
Perlero Nuevo
Perlero Nuevo
Registrado: 17 Jul 2008
Mensajes: 4
Otras formas Responder citando

Hola otra vez.

Esta vez quería saber si existen otras expresiones que hagan lo mismo que sort, delete, keys, split, die y si existen distintas formas de concatenar ya que creo que estoy usando todo el rato lo mismo.

Gracias.
Mensaje Mie Jul 23, 2008 6:44 am
explorer
Moderador
Moderador
Registrado: 24 Jul 2005
Mensajes: 4092
Ubicación: Valladolid, España
Responder citando

Interesante reflexión...

Para un lenguaje tan complicado como Perl (complicado porque tiene una sintaxis muy rica) quizás es bueno saber que con las mismas funciones podemos resolver muchos problemas distintos.

En ese momento, cuando vemos que estamos haciendo lo mismo una y otra vez, es porque seguramente es lo más idóneo (trabajamos con estructuras mentales conocidas y resolvemos los problemas con ellas). Ahora bien, ¿eso es todo lo que me puede ofrecer este lenguaje? ¿Es que no hay nada más?

Pues sí que lo hay. Existen estructuras creadas sobre estas mismas estructuras que amplían el horizonte de soluciones.

Ejemplo. En el caso de sort(), es bueno saber su aplicación en la Transformada Schwartziana. Un ejemplo de aplicación, en este mismo foro.

De keys(), saber que existe values() y, una función que se usa poco pero es muy útil: each().

De split() estaría bien leerse todos los posibles usos, que son un montón. Y de die(), saber la diferencia entre que el mensaje acabe con "\n" o no. Y que puede ser capturado con eval().

Y más allá... están los módulos en CPAN.
Mensaje Jue Jul 24, 2008 1:03 pm
Jenda
Perlero Frecuente
Perlero Frecuente
Registrado: 29 Oct 2007
Mensajes: 104
Ubicación: Praga, Republica Checa
Responder citando

Una cosa más con die() es que el parámetro puede también ser un objeto. Y después, si el die() está dentro de algún eval{}, el $@ va a contener este objeto. Es mejor si el objeto sabe cómo serializarse (convertirse a una cadena de caracteres). Pon un ojo a Exception::Class, por ejemplo.
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