Algo de historia

../../../_images/dario-veronesi-lUO-BjCiZEA-unsplash.jpg

La historia de la programación está relacionada directamente con la aparición de los computadores, que ya desde el siglo XV tuvo sus inicios con la construcción de una máquina que realizaba operaciones básicas y raíces cuadradas (Gottfried Wilheml von Leibniz); aunque en realidad la primera gran influencia hacia la creación de los computadores fue la máquina diferencial para el cálculo de polinomios, proyecto no concluido de Charles Babbage (1793-1871) con el apoyo de Lady Ada Countess of Lovelace (1815-1852), primera persona que incursionó en la programación y de quien proviene el nombre del lenguaje de programación ADA creado por el DoD (Departamento de defensa de Estados Unidos) en la década de 1970. 1

Hitos de la computación

La siguiente tabla es un resumen de los principales hitos en la historia de la computación:

Hitos en la computación

Personaje

Aporte

Año

Gottfried Leibniz

Máquinas de operaciones básicas

XV

Charles Babbage

Máquina diferencial para el cálculo de polinomios

XVII

Ada Lovelace

Matemática, informática y escritora británica. Primera programadora de la historia por el desarrollo de algoritmos para la máquina analítica de Babbage

XVII

George Boole

Contribuyó al algebra binaria y a los sistemas de circuitos de computadora (álgebra booleana)

1854

Herman Hollerit

Creador de un sistema para automatizar la pesada tarea del censo

1890

Alan Turing

Máquina de Turing - una máquina capaz de resolver problemas - Aportes de Lógica Matemática - Computadora con tubos de vacío

1936

John Atanasoff

Primera computadora digital electrónica patentada: Atanasoff Berry Computer (ABC)

1942

Howard Aiken

En colaboración con IBM desarrolló el Mark I, una computadora electromecánica de 16 metros de largo y más de dos de alto que podía realizar las cuatro operaciones básicas y trabajar con información almacenada en forma de tablas

1944

Grace Hopper

Primera programadora que utilizó el Mark I

1945

John W. Mauchly

Junto a John Presper Eckert desarrolló una computadora electrónica completamente operacional a gran escala llamada Electronic Numerical Integrator And Computer (ENIAC)

1946

John Von Neumann

Propuso guardar en memoria no solo la información, sino también los programas, acelerando los procesos

1946

Luego los avances en las ciencias informáticas han sido muy acelerados, se reemplazaron los tubos de vacío por transistores en 1958 y en el mismo año, se sustituyeron por circuitos integrados, y en 1961 se miniaturizaron en chips de silicio. En 1971 apareció el primer microprocesador de Intel; y en 1973 el primer sistema operativo CP/M. El primer computador personal es comercializado por IBM en el año 1980.

../../../_images/ada-lovelace.jpg

Ada Lovelace: primera programadora de la historia 2

De los computadores a la programación

De acuerdo a este breve viaje por la historia, la programación está vinculada a la aparición de los computadores, y los lenguajes tuvieron también su evolución. Inicialmente, como ya hemos visto, se programaba en código binario, es decir en cadenas de 0s y 1s, que es el lenguaje que entiende directamente el computador, tarea extremadamente difícil; luego se creó el lenguaje ensamblador, que aunque era lo mismo que programar en binario, al estar en letras era más fácil de recordar. Posteriormente aparecieron lenguajes de alto nivel, que en general, utilizan palabras en inglés, para dar las órdenes a seguir, para lo cual utilizan un proceso intermedio entre el lenguaje máquina y el nuevo código llamado código fuente, este proceso puede ser un compilador o un intérprete.

Un compilador lee todas las instrucciones y genera un resultado; un intérprete ejecuta y genera resultados línea a línea. En cualquier caso han aparecido nuevos lenguajes de programación, unos denominados estructurados y en la actualidad en cambio los lenguajes orientados a objetos y los lenguajes orientados a eventos. 3

Cronología de lenguajes de programación

Desde la década de 1950 se han sucedido multitud de lenguajes de programación que cada vez incorporan más funcionalidades destinadas a cubrir las necesidades del desarrollo de aplicaciones. A continuación se muestra una tabla con la historia de los lenguajes de programación más destacados:

../../../_images/proglangs.png

Cronología de los lenguajes de programación más destacados

El número actual de lenguajes de programación depende de lo que se considere un lenguaje de programación y a quién se pregunte. Según TIOBE más de 250; según Wikipedia más de 700, según Language List más de 2500; y para una cifra muy alta podemos considerar a Online Historical Encyclopaedia of Programming Languages que se acerca a los 9000.

Creadores de lenguajes de programación

El avance de la computación está íntimamente relacionado con el desarrollo de los lenguajes de programación. Sus creadores y creadoras juegan un rol fundamental en la historia tecnológica. Veamos algunas de estas personas: 4

Creadores de lenguajes de programación

Personaje

Aporte

Alan Cooper

Desarrollador de Visual Basic

Alan Kay

Pionero en programación orientada a objetos. Creador de Smalltalk

Anders Hejlsberg

Desarrollador de Turbo Pascal, Delphi y C#

Bertrand Meyer

Inventor de Eiffel

Bill Joy

Inventor de vi. Autor de BSD Unix. Creador de SunOS, el cual se convirtió en Solaris

Bjarne Stroustrup

Desarrollador de C++

Dennis Ritchie

Inventor del lenguaje C y del Sistema Operativo Unix

Brian Kernighan

Coautor del primer libro de programación en lenguaje C con Dennis Ritchie y coautor de los lenguajes de programación AWK y AMPL

Edsger W. Dijkstra

Desarrolló las bases para la programación estructurada. Algoritmo de caminos mínimos

Grace Hopper

Desarrolladora de Flow-Matic, influenciando el lenguaje COBOL

Guido van Rossum

Creador de Python

James Gosling

Desarrollador de Oak. Precursor de Java

Joe Armstrong

Creador de Erlang

John Backus

Inventor de Fortran

John McCarthy

Inventor de LISP

John von Neumann

Creador del concepto de sistema operativo

Ken Thompson

Inventor de B. Desarrollador de Go. Coautor del sistema operativo Unix

Kenneth E. Iverson

Desarrollador de APL. Co-desarrollador de J junto a Roger Hui

Larry Wall

Creador de Perl y Perl 6

Martin Odersky

Creador de Scala. Previamente contribuyó en el diseño de Java

Mitchel Resnick

Creador del lenguaje visual Scratch

Nathaniel Rochester

Inventor del primer lenguaje en ensamblador simbólico (IBM 701)

Niklaus Wirth

Inventor de Pascal, Modula y Oberon

Robin Milner

Inventor de ML. Compartió crédito en el método Hindley–Milner de inferencia de tipo polimórfica

Seymour Papert

Pionero de la inteligencia artificial. Inventor del lenguaje de programación Logo en 1968

Stephen Wolfram

Creador de Mathematica

Yukihiro Matsumoto

Creador de Ruby

1

Foto original por Dario Veronesi en Unsplash.

2

Fuente: Meatze.

3

Fuente: Universidad Técnica del Norte.

4

Fuente: Wikipedia.