[Madrid-pm] STDOUT en ventana y en Windows...

Joaquín Ferrero explorer en joaquinferrero.com
Lun Mar 26 04:27:31 PDT 2007


DervishD escribió:
> 
>     Para que te hagas una idea, cuando le puse el Vim para que usara un
> editor decente, me preguntó "Ah, pero ¿el Perl este no se puede usar con
> el notepad?". Ante mi mirada asesina rectificó: "bueno, notepad no, el
> Word o lo que sea, algo para escribir".
> 

Entonces se me ocurre que la salida hacia el notepad.

Grabas la salida a un fichero externo y luego un

	system("notepad.exe",$fichero);

:-)


>     No, si mi idea no es que él programe la interfaz, en absoluto, sino
> que él escriba su código en cierto lugar del fichero y que,
> "magicamente", la salida salga en una ventanita y no en la consola al
> hacer doble click en el programa. La idea es precisamente que no esté
> pensando en que esto es "raro", sino que está haciendo un programa
> sencillo "de Windows". Por ejemplo, el primer programa que intentó, uno

Yo hice uno parecido en Tk, muy sencillo. Había que cambiar los print por ir 
agregando las líneas a un control equipado con barra de scroll vertical. Lo 
que pasa es que no lo tengo por aquí y no me acuerdo cómo era la cosa.

Y si dice que en Visual Basic es más sencillo, que lo haga en Visual Basic. 
Que vea que 'hacer print' es igual de complicado.

> que imprimía los números pares menores que 50, le dejó alucinado. Se
> quedó mirando la consola como un zombi, pensando que el programa no
> funcionaba, y te juro que allí había una lista de números (pares, por
> más señas) y el tío ¡no los veía!, estaba esperando a que el programa se
> ejecutase, porque para él, ejecutarse es que salga una ventana diciendo
> algo. Es un caso de contaminación extrema, qué le vamos a hacer.

Mi experiencia dice que en esos casos hay que huir como si fueran la peste. La 
primera vez me dije que no cobraba lo suficiente como para tener la paciencia 
necesaria para soportar este tipo de usuarios metidos a programadores. Y la 
segunda, me pagaban un pastón por lo mismo, pero me dije que NUNCA más lo 
volvería hacer. Ahora, soy más feliz. Pobre, pero feliz.


>> Si ya de partida intentas enseñarle a programar en Perl con
>> interfaz gráfica, lo más probable es que piense que usar "ese
>> engendro" es una pérdida de tiempo, pudiendo usar Visual Basic.
> 
>     No pretendo eso, para nada. Si es incapaz de pensar en un bucle para
> solucionar un problema, imagina si tiene que aprender Tk... La cosa es
> que yo escriba un esqueleto de forma que si él hace "print" la salida
> sea en una ventana aparte y no en la consola en la que ejecutó el
> script.
> 

Sencillísimo. Que escriba el script. Tu le pones delante el icono del script 
(en el desktop o en la ventana de windows) y le dices que para ejecutarlo sólo 
tiene que hacer doble click en él, como cualquier programa de windows. El 
resultado ya lo sabemos: se arrancará una ventana de terminal, pero el verá 
como salen sus 'print'. Se pone un '<>' antes del final del programa, con un 
mensaje que diga 'Pulsa enter para salir', y cuando lo haga, la ventana de 
terminal se cierra, como cualquier programa de windows.

:-)

>     Creo que, a fuerza de obligarle, acabaré acostumbrándole a usar la
> consola y algún editor decente, pero si lo hago ahora, no conseguiré que
> aprenda ni algoritmos ni eficiencia al usar un ordenador, sino que se
> pondrá en modo "que asco, esto es en blanco y negro". Para él,
> informática "de verdad" son los programas que usan los de CSI, esos que
> tienen animaciones en 3D para cualquier chorrada, que te leen la mente y
> que hacen un ruidito cada vez que imprimen una línea en la pantalla.
> 

¡Huy!, pues ya te veo con curro para AÑOS :-)


-- 
JoaquinFerrero.com                          Linux User #109802
msn/jab  explorer en jab.pucela.net           GPG/PGP  0x42DDB1FE
skype    joaquinferrero                    phone  +34670654075


Más información sobre la lista de distribución Madrid-pm