-
Telar de Jacquard
Joseph Marie Jacquard fue el inventor del telar programable. Este inventor francés es el responsable de la programación. No es el inventor de la misma ya que las cosas han cambiado mucho desde entonces pero está claro que creó el primer sistema de instrucciones para un computador
Se estima que este fue el primer lenguaje de programación ya que estas tarjetas perforadas se utilizaron en las primeras máquinas computacionales creadas por Charles Babbage y posteriormente por los primeros ordenadores -
El primer lenguaje de programación, el de Ada Lovelace
Entre 1842 y 1843, Ada Lovelace se propuso traducir las memorias del matemático italiano Luigi Menabrea y, mientras lo hacía, creó un lenguaje de programación a mano para calcular la serie de números de Bernoulli con la máquina de Babbage. -
Herman Hollerith
Los datos no eran muy actualizados. Un asistente de la oficina del censo llamado Herman Hollerit (1860-1929) desarrolló un sistema para automatizar la pesada tarea del censo. Mediante tarjetas perforadas y un sistema de circuitos eléctricos, capaz de leer unas 60 tarjetas por minuto realizó el censo de 1890 en 3 años ahorrando tiempo y dinero. Más tarde fundó la Tabulating Machine Company y en 1924 tras alguna que otra fusión nació la Internacional Bussines Machines, IBM -
Period: to
Década de los 40
En la década de 1940 fueron creadas las primeras computadoras modernas, con alimentación eléctrica. La velocidad y capacidad de memoria limitadas forzaron a los programadores a escribir programas, en lenguaje ensamblador muy afinados. Finalmente se dieron cuenta de que la programación en lenguaje ensamblador requería de un gran esfuerzo intelectual y era muy propensa a errores -
Plankalkül
Plankalkül fue el primer lenguaje de programación, que fue creado por el científico alemán Konrad Zuse en los años 1942 a 1946 se considera un lenguaje de alto nivel, pero no se publicó hasta 1972. Zuse quería desarrollar un método sofisticado para el desarrollo de las tareas que el equipo debe hacer. -
Sistema de Codificación ENIAC
Fue construida en la Universidad de Pensilvania por
John Presper Eckert y John William Mauchly,
ocupaba una superficia de 167 metros cuadrados. Y operaba con un total de 17.468 válvulas electrónicas o tubos de vacío.
La computadora podía calcular trayectorias de proyectiles, lo cual fue el objetivo primario al construirla. En 1,5 segundos era posible calcular la potencia 5000 de un número de hasta 5 cifras y podía resolver 5000 sumas y 300 multiplicaciones en 1 segundo. -
Lenguaje Ensamblador
El lenguaje ensamblador es el lenguaje de programación utilizado para escribir programas informáticos de bajo nivel, y constituye la representación más directa del Código máquina específico para cada arquitectura de computadoras legible por un programador. -
Jerarquía de Chomsky
Jerarquía de Chomsky. En Lingüística, Matemáticas e Informática dícese del sistema jerárquico de definiciones, ideado por Noam Chomsky en 1956 en el MIT para clasificar de manera matemática los lenguajes formales en cuatro categorías enumeradas de 0 a 3 y los mecanismos formalizadores como gramáticas formales, expresiones y autómatas para reconocer cada tipo. También se conoce bajo el nombre de Clasificación de Chomsky o Jerarquía matemática de los lenguajes. -
Fortran
Es un lenguaje de programación de alto nivel de propósito general, procedimental e imperativo, que está especialmente adaptado al cálculo numérico y a la computación científica. Desarrollado originalmente por IBM en 1957 y usado para aplicaciones científicas y de ingeniería, el Fortran vino a dominar esta área de la programación desde el principio y ha estado en uso continuo por más de 50 años en áreas de cómputo tales como la predicción numérica del tiempo. Además es el primer copilador. -
Lisp
Lisp es una familia de lenguajes de programación de computadora de tipo multiparadigma con larga historia y una inconfundible y útil sintaxis basada en la notación polaca. Desarrollado originalmente en 1958 por John McCarthy y sus colaboradores en el Instituto Tecnológico de Massachusetts, Lisp es el segundo lenguaje de programación de alto nivel de mayor antigüedad entre los que continúan teniendo un uso extendido en la actualidad solo COBOL y FORTRAN son anteriores. -
ALGOL
Otro hito de la programación fue la publicación, por un comité Americano y Europeo de científicos de la computación, de un nuevo “lenguaje para algoritmos”; el Reporte de ALGOL 60. Este reporte consolidó muchas ideas que estaban circulando en aquel entonces, y proporcionó dos innovaciones importantes para los lenguajes de programación:
1)Estructuras de bloques anidadas
2)Ámbito léxico -
COBOL
Llegó COBOL como la culminación de varios otros sistemas de programación. El objetivo era crear un lenguaje de programación universal que pudiera ser usado en cualquier ordenador.
No estaba mal pensado, ya que en los años 60 había distintos ordenadores que no eran compatibles entre sí, y de esta manera las empresas podían fichar talentos sin tener que enseñar cómo usar los compiladores y diferentes lenguajes que se usaban en sus empresas, si es que eran distintos. -
Simula
Simula es un lenguaje de programación orientada a objetos (POO) de 1962. Fue el primero de este tipo que incluyó el concepto de clase. Varios años después de su desarrollo, casi todos los lenguajes modernos comenzaron a utilizar sus principios de orientación a objetos. Así fue como se popularizaron términos como clases, objetos, instancias, herencia, polimorfismo, etc. -
Snobol
Durante las décadas de los cincuenta y sesenta del siglo XX había un importante interés en lenguajes de programación de computadoras de propósito especial. SNOBOL fue uno más de los lenguajes orientados a cadenas de texto y de entre ellos uno de los más exitosos. -
ASCII
Fue creado en 1963 por el Comité Estadounidense de Estándares.
Es un código de caracteres basado en el alfabeto latino, tal como se usa en inglés moderno. ASCII es como una refundición o evolución de los conjuntos de códigos utilizados entonces en telegrafía. Más tarde, en 1967, se incluyeron las minúsculas, y se redefinieron algunos códigos de control para formar el código conocido como US-ASCII. -
BASIC
Es una familia de lenguajes de programación de alto nivel que se desarrolló como una herramienta de enseñanza, pero gracias a su popularidad, se comenzó a adoptar en otros sistemas hasta el punto de que, a día de hoy, sigue siendo muy importante, con programas como Gambas o Visual Basic que se siguen utilizando. Uno de los puntos más importantes de la historia de los lenguajes de programación. -
Simula 67
Simula se considera por algunos como el primer lenguaje de programación orientado a objetos. Como su nombre lo indica, Simula fue diseñado para hacer simulaciones, y las necesidades de ese dominio proporcionaron el marco para muchas de las características de los lenguajes orientados a objetos en la actualidad. -
Period: to
Estableciendo Paradigmas Fundamentales
El período comprendido entre finales de 1960 y finales de 1970 trajo un gran florecimiento de lenguajes de programación. La mayoría de los paradigmas de lenguajes de programación más importantes y actualmente en uso se inventaron en este período. -
Pascal
Niklaus Wirth fue un profesor que creó Pascal como, igual que BASIC, herramienta de enseñanza de programación, pero pronto trascendó como lenguaje de programación para crear todo tipo de aplicaciones. De hecho, aunque hoy se sigue usando, su presencia en aplicaciones es menor, pero sí se ve en escuelas de programación junto al compilador Free Pascal. -
C
C fue creado por Dennis Ritchie como un lenguaje de programación en el que solo unas pocas instrucciones pueden traducir cada elemento del lenguaje. C se usó como intermediario entre lenguajes, ya que era un lenguaje de bajo nivel, pero con el tiempo, este lenguaje de programadores para programadores se ha utilizado en todo tipo de software, y ha sido la base de otros lenguajes de programación que se utilizan muchísimo en la actualidad. -
Smalltalk
Smalltalk es un lenguaje reflexivo de programación, orientado a objetos y con tipado dinámico. Por sus características, Smalltalk puede ser considerado también como un entorno de objetos, donde incluso el propio sistema es un objeto. Metafóricamente, se puede considerar que un Smalltalk es un mundo virtual donde viven objetos que se comunican entre sí, mediante el envío de mensajes. Es considerados por algunos como el primer lenguaje Orientado a Objetos. -
Prolog
Prolog, es un lenguaje de programación lógico e interpretado usado habitualmente en el campo de la Inteligencia artificial. -
SQL
SQL (por sus siglas en inglés Structured Query Language; en español lenguaje de consulta estructurada) es un lenguaje de dominio específico utilizado en programación, diseñado para administrar, y recuperar información de sistemas de gestión de bases de datos relacionales. -
C++
Fue diseñado en 1979 por Bjarne Stroustrup. C++ es uno de los lenguajes de programación más utilizados. La intención de Bjarne Stroustrup fue la de extender al lenguaje de programación C mecanismos para manipular objetos. Un punto clave en la historia de los lenguajes de programación. -
Period: to
La década de los 198: Consolidación en los lenguajes imperativos
La década de 1980 fueron años de consolidación relativa en los lenguajes imperativos. En vez de inventar nuevos paradigmas, se comenzó a trabajar a partir de las ideas inventadas en la década anterior. C++ combinaba la programación orientada a objetos y la programación de sistemas. -
C++
El nombre C++ fue propuesto por Rick Mascitti en el año 1983, cuando el lenguaje fue utilizado por primera vez fuera de un laboratorio científico. -
Erlang
Erlang es un lenguaje de programación concurrente y un sistema de ejecución que incluye una máquina virtual (BEAM) y bibliotecas (OTP).
El subconjunto de programación secuencial de Erlang es un lenguaje funcional, con evaluación estricta, asignación única, y tipado dinámico. -
Ada
Ada es un lenguaje de programación orientado a objetos y fuertemente tipado de forma estática que fue diseñado por Jean Ichbiah de CII Honeywell Bull por encargo del Departamento de Defensa de los Estados Unidos. Es un lenguaje multipropósito, orientado a objetos y concurrente, pudiendo llegar desde la facilidad de Pascal hasta la flexibilidad de C++. -
Haskell
Haskell es un lenguaje de programación estandarizado multi-propósito, funcionalmente puro, con evaluación no estricta y memorizada, y fuerte tipificación estática. Su nombre se debe al lógico estadounidense Haskell Curry, debido a su aportación al cálculo lambda, el cual tiene gran influencia en el lenguaje. En Haskell, una función es un ciudadano de primera clase del lenguaje de programación. -
Period: to
La Década de los 90: La Era de Internet
El rápido crecimiento de Internet en la década de 1990 fue el siguiente gran acontecimiento histórico para los lenguajes de programación. Con la apertura de una plataforma totalmente nueva para los sistemas informáticos, Internet creó una oportunidad adoptar nuevos lenguajes. La década de 1990 no vio ninguna novedad fundamental en los lenguajes imperativos, pero sí mucha recombinación y la maduración de viejas ideas. Esta era comenzó la difusión de los lenguajes funcionales. -
Python
Python es un lenguaje de programación interpretado cuya filosofía hace hincapié en una sintaxis que favorezca un código legible. Se trata de un lenguaje de programación multiparadigma, ya que soporta orientación a objetos, programación imperativa y, en menor medida, programación funcional. Es un lenguaje interpretado, dinámico y multiplataforma. -
Visual Basic
Visual Basic (VB) es un lenguaje de programación dirigido por eventos, desarrollado por Alan Cooper para Microsoft. Este lenguaje de programación es un dialecto de BASIC, con importantes agregados. Su primera versión fue presentada en 1991, con la intención de simplificar la programación utilizando un ambiente de desarrollo. -
Lua
Lua es un lenguaje de programación imperativo, estructurado y bastante ligero que fue diseñado como un lenguaje interpretado con una semántica extendible.
Lua fue creado en 1993 por Roberto Ierusalimschy, Luiz Henrique de Figueiredo y Waldemar Celes basado en C y Perl con una estructura similar. Lua es un lenguaje de programación suficientemente compacto para usarse en diferentes plataformas. En Lua las variables no tienen tipo, sólo los datos y pueden ser lógicos, enteros, flotante o cadenas. -
Ruby
Ruby es un lenguaje de programación interpretado, reflexivo y orientado a objetos, creado por el programador japonés Yukihiro Matz Matsumoto, quien comenzó a trabajar en Ruby en 1993, y lo presentó públicamente en 1995. Combina una sintaxis inspirada en Python y Perl con características de programación orientada a objetos similares a Smalltalk. Comparte también funcionalidad con otros lenguajes de programación como Lisp, Lua, Dylan y CLU. -
Java
Java es un lenguaje de programación y una plataforma informática comercializada por primera vez en 1995 por Sun Microsystems. Java es rápido, seguro y fiable. Desde portátiles hasta centros de datos, desde consolas para juegos hasta super computadoras, desde teléfonos móviles hasta Internet, Java está en todas partes, que es ejecutado en una plataforma no tiene que ser recompilado para correr en otra. Particularmente para aplicaciones de cliente-servidor de web. -
JavaScript
JavaScript (abreviado comúnmente JS) es un lenguaje de programación interpretado. Se define como orientado a objetos,basado en prototipos, imperativo, débilmente tipado y dinámico.
Se utiliza principalmente en su forma del lado del cliente, implementado como parte de un navegador web permitiendo mejoras en la interfaz de usuario y páginas web dinámicas -
PHP
PHP es un lenguaje de programación de propósito general de código del lado del servidor originalmente diseñado para el preprocesado de texto plano en UTF-8. Posteriormente se aplicó al desarrollo web de contenido dinámico, dando un paso evolutivo en el concepto de aplicación en línea, por su carácter de servicio.
Su implementación en los documentos HTML era aparentemente muy sencilla. Hay que decir, que, PHP no genera HTML, sino que ofrece una salida de texto con codificación UTF-8. -
D
D es un lenguaje de programación de propósito general desarrollado por Walter Bright cuya primera versión apareció en 1999. Se origina como un rediseño de C++, con un enfoque más pragmático, pero no es un lenguaje puramente derivado del anterior. D ha mantenido algunas características de C++ y también está influido por otros conceptos de otros lenguajes como Java, C# y Eiffel. Una versión estable fue lanzada el 2 de enero de 2007. -
C#
C# (pronunciado si sharp en inglés) es un lenguaje de programación multiparadigma desarrollado y estandarizado por Microsoft como parte de su plataforma .NET.
C# es uno de los lenguajes de programación diseñados para la infraestructura de lenguaje común.
Su sintaxis básica deriva de C/C++ y utiliza el modelo de objetos de la plataforma .NET, similar al de Java, aunque incluye mejoras derivadas de otros lenguajes. -
Visual Basic .NET
Visual Basic .NET (VB.NET) es un lenguaje de programación orientado a objetos que se puede considerar una evolución de Visual Basic implementada sobre el framework .NET. Su introducción resultó muy controvertida, ya que debido a cambios significativos en el lenguaje VB.NET no es retro compatible con Visual Basic, pero el manejo de las instrucciones es similar a versiones anteriores de Visual Basic, facilitando así el desarrollo de aplicaciones más avanzadas con herramientas modernas. -
Scala
Scala es un lenguaje de programación multi-paradigma diseñado para expresar patrones comunes de programación en forma concisa, elegante y con tipos seguros. Integra sutilmente características de lenguajes funcionales y orientados a objetos. La implementación actual se ejecuta en la máquina virtual de Java y es compatible con las aplicaciones Java existentes. -
Scratch
Seguimos con la historia de los lenguajes de programación hablando de Scratch, la revolución de los lengauejes de programación. Se trata de un lenguaje de programación visual desarrollado por el MIT que consiste en un lenguaje desarrollado para que niños, adolescentes y adultos aprendan a programar de manera visual sin tener demasiada idea de código. -
Go
Go es un lenguaje de programación concurrente y compilado inspirado en la sintaxis de C. Ha sido desarrollado por Google, y sus diseñadores iniciales son Robert Griesemer, Rob Pike y Ken Thompson.
Actualmente está disponible en formato binario para los sistemas operativos Windows, GNU/Linux y Mac OS X.
Go es un lenguaje de programación compilado, concurrente, imperativo, estructurado, orientado a objetos y con recolector de basura que de momento está soportado en diferentes tipos de sistemas. -
Kotlin
Kotlin es un lenguaje de programación de tipado estático que corre sobre la máquina virtual de Java y que también puede ser compilado a código fuente de JavaScript. Es desarrollado principalmente por JetBrains en sus oficinas de San Petersburgo. El nombre proviene de la isla de Kotlin, situada cerca de San Petersburgo. Kotlin está diseñado para interoperar con código Java y es dependiente del código Java de su biblioteca de clases, tal como pueda ser el entorno de colecciones de Java. -
Dart
Dart es un lenguaje de programación de código abierto, desarrollado por Google. El objetivo de Dart no es reemplazar JavaScript como el principal lenguaje de programación web en los navegadores web, sino ofrecer una alternativa más moderna. El espíritu del lenguaje puede verse reflejado en las declaraciones de Lars Bak, ingeniero de software de Google, que define a Dart como un “lenguaje estructurado pero flexible para programación Web”. -
Swift
Swift es un lenguaje de programación multiparadigma creado por Apple enfocado en el desarrollo de aplicaciones para iOS y macOS. Puede usar cualquier biblioteca programada en Objective-C y llamar a funciones de C. Swift tiene la intención de ser un lenguaje seguro, de desarrollo rápido y conciso. Usa el compilador LLVM incluido en Xcode. Fue presentado como un lenguaje propietario, pero en el año 2015, con la versión 2.2 pasó a ser de código abierto con la Licencia Apache.