Primer lenguaje de programación de la historia
La programación de computadoras es esencial en nuestro mundo actual, ya que ejecuta los sistemas para casi todos los dispositivos que usamos. Los lenguajes de programación informática nos permiten decirles a las máquinas qué hacer. Las máquinas y los humanos “piensan” de manera muy diferente, por lo que los lenguajes de programación son necesarios para cerrar esa brecha. Tal vez oíste de Java, C#, C++, Python, Ruby, etc. como ejemplos de lenguaje de programación. Pero cuál es el primer lenguaje de programación de la historia. Hoy te contamos.
En 1946, Konrad Zuse, un ingeniero alemán mientras trabajaba en los Alpes de Bavaria, desarrolló el lenguaje Plankalkul. Entonces oficialmente el primer lenguaje de programación de alto nivel fue Plankalkul, que, entre otras cosas, se aplicó para jugar al ajedrez. Sin embargo, no se publicó hasta 1972, creándose el primer compilador en 1975. Ya a finales del siglo XX recibió más implementaciones y aplicaciones por parte de la Universidad de Berlín.
Ya luego en 1949 aparecería Short Code, propuesto por John Mauchly en 1949. Sin embargo, debido a que tenía que traducirse a código máquina antes de poder ejecutarse, tenía velocidades de procesamiento relativamente lentas.
Otros lenguajes de programación temprana se desarrollaron en las décadas de 1950 y 1960. Tenemos a Autocode, COBOL, FLOW–MATIC y LISP. De estos, solo COBOL y LISP siguen en uso hoy en día. Luego aparecería FORTRAN, el primer lenguaje de programación comercial de la historia.
Las características de Plankalkul, el primer lenguaje de programación de la historia, en términos modernos es la siguiente:
- Es un lenguaje de programación imperativo de alto nivel.
- Los programas son funciones reutilizables.
- Las funciones no son recursivas
- Sólo la llamada por valor se usa en la invocación de la función.
- Las variables son locales a funciones (programas).
- Es un lenguaje mecanografiado
- Los tipos de datos fundamentales son matrices y tuplas de matrices.
- El tipo de las variables no necesita ser declarado en un encabezado especial
- Los condicionales se procesan usando comandos protegidos.
- Hay una construcción WHILE para iteración
- No hay construcción GOTO