Cuatro maneras distintas de decirle a un computador qué hacer: cómo se leen, cómo se ejecutan y en qué situación conviene elegir cada una.
Interpretado, multiparadigma, pensado para leerse con facilidad.
Python apareció en 1991 de la mano de Guido van Rossum, con un objetivo claro: que escribir código fuera tan legible como explicarlo en voz alta. Esa filosofía lo convirtió en uno de los lenguajes más usados hoy, presente tanto en proyectos educativos como en sistemas de producción a gran escala.
Su código no se traduce por completo antes de ejecutarse: un intérprete lee y ejecuta cada instrucción sobre la marcha. Eso hace que probar ideas sea rápido, aunque tiene un costo en velocidad frente a lenguajes compilados.
Orientado a objetos, compilado a un formato que corre en cualquier sistema.
Java llegó en 1995 con una promesa que definió su historia: escribir una vez, ejecutar en cualquier parte. James Gosling lo diseñó pensando en que el mismo programa funcionara sin cambios en distintos sistemas operativos, algo poco común en su momento.
Su código no se compila directamente a instrucciones de un procesador específico, sino a un formato intermedio llamado bytecode. Ese bytecode corre sobre la máquina virtual de Java (JVM), que lo traduce al sistema donde se ejecuta.
Nació en el navegador y hoy corre también en servidores y aplicaciones.
JavaScript se creó en apenas diez días en 1995, obra de Brendan Eich, para darle vida a las páginas web estáticas de la época. Con el tiempo dejó de ser un lenguaje solo del navegador y hoy también corre en servidores, aplicaciones móviles y de escritorio.
El motor del navegador interpreta el código y lo ejecuta reaccionando a eventos: un clic, un desplazamiento, un envío de formulario. Esa naturaleza orientada a eventos es lo que permite que una página responda de inmediato a lo que hace quien la usa.
Compilado, de propósito general, con control directo sobre la memoria.
C++ surgió en 1985 como una extensión de C creada por Bjarne Stroustrup, pensada para añadir programación orientada a objetos sin sacrificar el control de bajo nivel que ya ofrecía su predecesor. Ese equilibrio explica por qué sigue siendo la base de software donde el rendimiento no es negociable.
Antes de ejecutarse, todo el código pasa por un compilador que lo transforma directamente en instrucciones para el procesador. El resultado es un programa que corre sin intermediarios, con acceso directo a la memoria del equipo.
Fuentes consultadas para reunir la información y los recursos visuales usados en esta ficha.