while (defined($_ = <STDIN>))
almacenamos en la variable mágica $_ una línea que es leída desde
la entrada estándar.
El bucle se ejecuta mientras la condición sea cierta: mientras haya
líneas en el fichero.
Cuando se alcanza el final del fichero, se devuelve undef y por
tanto se termina el bucle.
Casiano Rodríguez León