Curso de Raku / Objetos, entrada/salida y excepciones / Entrada y salida
Flujos estándar
Todo programa tiene tres flujos estándar que lo conectan con
su entorno: la salida estándar, el error estándar y la entrada estándar.
Raku los pone a tu disposición mediante tres variables especiales:
$*OUT, $*ERR y $*IN.
Llevas escribiendo en la salida estándar desde el principio:
say y print mandan su texto a
$*OUT.
say 'Hello'; # goes to standard outputLos mensajes de diagnóstico y de error se mantienen aparte, en el
error estándar, para que no se mezclen con la salida real del programa.
La rutina note escribe ahí:
note 'Something looks wrong'; # goes to standard errorEsta separación resulta útil porque los dos flujos se pueden redirigir por separado: puedes, por ejemplo, guardar la salida de un programa en un archivo y seguir viendo sus mensajes de error en la pantalla.
También puedes escribir directamente en los flujos. Tanto
$*OUT como $*ERR son manejadores con
sus propios métodos say y print:
$*OUT.say('a normal line');
$*ERR.say('a diagnostic line');El tercer flujo, $*IN, es la entrada estándar. Lo
conociste indirectamente a través de prompt, que lee una
línea de él. Volveremos a la lectura de entrada cuando veamos los manejadores de archivo, porque
$*IN es un manejador igual que un archivo abierto.
Práctica
Resuelve 1 cuestionario sobre el contenido de este tema.
Ejercicios
Esta sección contiene 3 ejercicios. Mira todos los temas de esta sección antes de empezar los ejercicios.