• ¿Por qué este código de ruby me bloquea el sistema operativo

 #487031  por Greentick
 23 Jun 2016, 03:35
Buenas a todos. Antes de comenzar (Por si desvarío un poco) cabe destacar que comencé mi primera guía de Ruby hace 4 días literalmente; y es mi primer lenguaje de programación; con lo que todavía soy demasiado noob. (Tiempo al tiempo....)

El caso; he estado siguiendo unas practicas; y yo.. que soy muy curioso; he querido probar cosas por mi cuenta.. he creado un código muy muy muy básico (No sabria crear nada mas) en el que una parte de él, creaba una matriz vacía, y seguídamente hacía un while con la condición de que si dentro de la matriz no está X objeto (En este caso 0 ), en la misma matriz se le añadirá un objeto (En este caso 1) esto por lo que entiendo hace que se cree un bucle infinito añadiendo ese mismo objeto todo el rato.

El código no era sólo eso; pero me di cuenta que al llegar a ese paso; el ordenador se me CONGELABA y no me dejaba hacer nada. (incluso entrar a modo comandas con CTRL + ALT + F1) . He intentado lanzar ese código 3 veces y las 3; he tenido que apagar el equipo de manera forzada.

Al ver que me pasaba eso; he intentado sacar esa parte del código y hacerla más simple. He querido comprobar si DE VERDAD ese código congela mi ordenador; y sí, lo hace cada vez que lo inicio.

Me gustaría que alguien más probase el código y me diga si le ocurre lo mismo. También; si alguien (Que seguro que alguien habrá) Sabe por qué pasa esto; me gustaría que me lo explicase, para así, poder entenderlo todo bien.

PD: Si no se os congela cuando lancéis el codigo; intentad usar un poco vuestro equipo (Entrar a alguna carpeta, abrir navegador..)
x = []
while x != '0'
x.push '1'
end
puts 'si el texto sale; algo ha ido mal'

PD2: ¿Es correcto usar la terminación 'Lanzar' para ejecutar un archivo ruby? en caso contrario; como se diría correctamente?.
Gracias!