EATRYL
Programación · Lógica y depuración

Errores de programación: sintaxis, ejecución y lógica

Una animación convierte los símbolos de lógica y los fragmentos de código en una historia visual. Después, una guía y un reto interactivo ayudan a distinguir fallas que suelen confundirse: errores de sintaxis, excepciones durante la ejecución, errores lógicos y procesos que no terminan.

Animación guiada · actividad interactiva · sin registro

La animación: un gancho visual

El Tejedor y la Bestia representan, de manera fantástica, el encuentro entre reglas formales y fallas de programación. Observa la secuencia y luego clasifica con precisión los ejemplos.

La historia es una metáfora. En programación, NaN, null y undefined no son automáticamente errores de sintaxis. Un bucle infinito tampoco es necesariamente un error sintáctico: el código puede ser válido, pero no alcanzar una condición de salida.

Cuatro clases de problema que conviene separar

1 · SintaxisEl código no cumple la gramática del lenguaje y el analizador no puede interpretarlo. Ejemplo: falta cerrar un paréntesis antes de abrir el bloque.
2 · EjecuciónEl programa comienza, pero una operación provoca una excepción o falla en tiempo de ejecución. Por ejemplo, intentar leer una propiedad de null.
3 · LógicaEl programa corre y produce un resultado, pero la fórmula o el razonamiento no corresponde al objetivo. La computadora no sabe cuál era la intención.
4 · No terminaciónLa condición de salida no llega a cumplirse. Un ciclo puede estar bien escrito y aun así repetir para siempre si su estado nunca cambia.

Y algunos valores no son errores por sí solos

undefined expresa que un valor no está definido; null suele representar ausencia intencional; NaN es un valor numérico especial de JavaScript. El problema depende de cómo se usan y de lo que el programa necesitaba hacer.

const dato = undefined;   const cociente = 0 / 0; // NaN   const etiqueta = null; // válida

Reto: identifica el tipo de problema

Lee cada fragmento. Elige la categoría que describe mejor el comportamiento del ejemplo.