SlideShare una empresa de Scribd logo
1 de 12
Historia de los lenguajes de
programación.
Instituto Tecnológico de Tijuana
Programación Estructurada
• Integrantes:
Islas Sandoval Luis David
Miranda Díaz Felipe Alberto
Estrada Pérez Manuel Alejandro
Hernández Sayas Jorge
Los primeros lenguajes de programación preceden a la computadora moderna.
En un inicio los lenguajes eran códigos.
La máquina del telar de Jacquard, creada en
1801, utilizaba los orificios en tarjetas
perforadas para representar los movimientos
de un brazo de la máquina de tejer, con el
objetivo de generar patrones decorativos
automáticamente.
Durante un período de nueve meses entre 1842
y 1843, Ada Lovelace tradujo las memorias del
matemático italiano Luigi Menabrea acerca de la
nueva máquina propuesta por Charles Babbage,
la Máquina Analítica.
En las primeras décadas del siglo 20, los
cálculos numéricos estaban basados en los
números decimales. Eventualmente se fueron
dando cuenta que la lógica podía ser
representada con números, no sólo con
palabras.
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 que la programación en lenguaje ensamblador
requería de un gran esfuerzo intelectual y era muy
propensa a errores.
En 1948, Konrad Zuse publicó un artículo
acerca de su lenguaje de programación
Plankalkül.
50’s y 60’s
• Creación de 3 lenguajes modernos:
• FORTRAN (1955).
• LISP (1958).
• COBOL (1959).
• Algunos otros lenguajes creados son:
1954 – IPL (Precursor de LISP)
1955 – FLOW-MATIC (Precursor de COBOL)
1957 – COMTRAN (Precursor de COBOL)
1959 – FACT (Precursor de COBOL)
1963 – CPL (Precursor de C)
1964 – BASIC
1967 – BCPL (Precursor de C)
Finales de los años 60’s a finales de los
70’s
• Simula. Década de los 60’s, por Nygaard y Dahl.
• C. Dennis Ritchie y Ken Thompson. Laboratorios Bell, 1969 –
1973.
• Prolog. Colmerauer, Roussel, Kowalski. 1972.
• Algunos lenguajes importantes son:
1969 – B (Precursor de C)
1970 – Pascal
1972 – C
1972 – Smalltalk
1972 – Prolog
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.
Algunos lenguajes importantes que se desarrollaron en este período
son:
• 1980 - C++ (C con clases, el nombre cambió en Julio de 1983)
• 1983 - Ada
• 1984 - MATLAB
• 1988 - Mathematica
En particular, el lenguaje de
programación Java se hizo popular
debido a su pronta integración con el
navegador web Netscape Navigator.
Surgieron muchos lenguajes de
“aplicaciones de desarrollo
rápido” (RAD), pero más
radicales e innovadores que los
lenguajes de RAD eran los
nuevos lenguajes de script.
Algunos lenguajes importantes que se desarrollaron en este período
son:
• 1990 - Haskell
• 1991 - Python
• 1991 - Visual Basic
• 1991 - HTML (lenguaje de marcado de hipertexto)
• 1995 - Java
• 1995 - JavaScript
Personas destacadas en la creacion
de lenguajes de programación
• John Backus, inventor de Fortran.
• Alan Cooper, desarrollador de Visual Basic.
• Edsger W. Dijkstra, desarrolló la estructura para la programación
estructurada.
• James Gosling, desarrollador de Oak, precursor de Java.
• Anders Hejlsberg, desarrollador de Turbo Pascal, Delphi y C#.
• Alan Kay, pionero en programación orientada a objetos, creador
de Smalltalk.
• Bertrand Meyer, inventor de Eiffel.
• John von Neumann, creador del concepto de sistema operativo.
• Martin Odersky, creador de Scala, y previamente contribuyó en
el diseño de Java
• Dennis Ritchie, inventor de C. Sistema Operativo Unix.
• Nathaniel Rochester, inventor del primer lenguaje en
ensamblador simbólico (IBM 701).
• Bjarne Stroustrup, desarrollador de C++.
• Ken Thompson, inventor de B, desarrollador de Go, y coauthor
del sistema operativo Unix.
• Niklaus Wirth, inventor de Pascal, Modula y Oberon.
• Stephen Wolfram, creador de Mathematica.
• Abel Tarazona, Creador de Fox23 y fundador de Google Jupiter .
• Kattia Vela, Creadora de TNT.
Tendencias Actuales
• Aumentar el soporte para la programación funcional en lenguajes
importantes utilizados comercialmente.
• Construir lenguajes para apoyar la programación concurrente y distribuida.
• Desarrollo de software orientado a componentes.
• Metaprogramación, la reflexión o el acceso al árbol de sintaxis abstracta.
• Mayor énfasis en cuanto a distribución y movilidad.
• Integración con bases de datos, incluyendo XML y bases de datos
relacionales.
• XML para interfaz gráfica (XUL, XAML).
• El código abierto como una filosofía de desarrollo de lenguajes,
• Programación Orientada a Aspectos (AOP).
• Lenguajes que soporten programar sobre los procesadores de la GPU en
paralelo, como OpenCL.

Más contenido relacionado

La actualidad más candente

Introduccion a la Programacion
Introduccion a la ProgramacionIntroduccion a la Programacion
Introduccion a la ProgramacionOscar Hernando
 
Kernel de los sistemas operativos
Kernel de los  sistemas operativosKernel de los  sistemas operativos
Kernel de los sistemas operativosAlex Acosta
 
Fundamentos de Programacion - Unidad 1 conceptos basicos
Fundamentos de Programacion - Unidad 1 conceptos basicosFundamentos de Programacion - Unidad 1 conceptos basicos
Fundamentos de Programacion - Unidad 1 conceptos basicosJosé Antonio Sandoval Acosta
 
Power designer-presentación
Power designer-presentaciónPower designer-presentación
Power designer-presentaciónskrapy95
 
Lenguajes de programación.ppt
Lenguajes de programación.pptLenguajes de programación.ppt
Lenguajes de programación.pptEliezer Cordova
 
Tabla comparativa de herramientas case oswaldo mauleon
Tabla comparativa de herramientas case oswaldo mauleon Tabla comparativa de herramientas case oswaldo mauleon
Tabla comparativa de herramientas case oswaldo mauleon oswaldoyuneri
 
Lenguaje de programacion
Lenguaje de programacionLenguaje de programacion
Lenguaje de programacionElder Giron
 
Tipos abstractos de datos
Tipos abstractos de datosTipos abstractos de datos
Tipos abstractos de datosJose Armando
 

La actualidad más candente (20)

Diapositivas pseudocodigo
Diapositivas pseudocodigoDiapositivas pseudocodigo
Diapositivas pseudocodigo
 
Introduccion a la Programacion
Introduccion a la ProgramacionIntroduccion a la Programacion
Introduccion a la Programacion
 
Kernel de los sistemas operativos
Kernel de los  sistemas operativosKernel de los  sistemas operativos
Kernel de los sistemas operativos
 
Fundamentos de programación
Fundamentos de programaciónFundamentos de programación
Fundamentos de programación
 
Estructura de registros
Estructura de registrosEstructura de registros
Estructura de registros
 
Lenguaje de programacion java
Lenguaje de programacion javaLenguaje de programacion java
Lenguaje de programacion java
 
Paradigmas de programación
Paradigmas de programaciónParadigmas de programación
Paradigmas de programación
 
Presentación PSeInt
Presentación PSeIntPresentación PSeInt
Presentación PSeInt
 
Grado10
Grado10Grado10
Grado10
 
algoritmos-.ppt
algoritmos-.pptalgoritmos-.ppt
algoritmos-.ppt
 
Fundamentos de Programacion - Unidad 1 conceptos basicos
Fundamentos de Programacion - Unidad 1 conceptos basicosFundamentos de Programacion - Unidad 1 conceptos basicos
Fundamentos de Programacion - Unidad 1 conceptos basicos
 
Power designer-presentación
Power designer-presentaciónPower designer-presentación
Power designer-presentación
 
Procedimientos almacenados en MySQL
Procedimientos almacenados en MySQLProcedimientos almacenados en MySQL
Procedimientos almacenados en MySQL
 
Lógica de programación
Lógica de programaciónLógica de programación
Lógica de programación
 
Front end y Back-end
Front end y Back-end Front end y Back-end
Front end y Back-end
 
Lenguajes de programación.ppt
Lenguajes de programación.pptLenguajes de programación.ppt
Lenguajes de programación.ppt
 
Tabla comparativa de herramientas case oswaldo mauleon
Tabla comparativa de herramientas case oswaldo mauleon Tabla comparativa de herramientas case oswaldo mauleon
Tabla comparativa de herramientas case oswaldo mauleon
 
Lenguaje de programacion
Lenguaje de programacionLenguaje de programacion
Lenguaje de programacion
 
Tipos abstractos de datos
Tipos abstractos de datosTipos abstractos de datos
Tipos abstractos de datos
 
Tecnologia grafica multimedia fmm
Tecnologia grafica multimedia fmmTecnologia grafica multimedia fmm
Tecnologia grafica multimedia fmm
 

Destacado

Comunicación humana por medio de herramientas
Comunicación humana por medio de herramientasComunicación humana por medio de herramientas
Comunicación humana por medio de herramientasDiana9505
 
HISTORIA Y EVOLUCION DE LOS LENGUAJES DE PROGRAMACION
HISTORIA Y EVOLUCION DE LOS LENGUAJES DE PROGRAMACIONHISTORIA Y EVOLUCION DE LOS LENGUAJES DE PROGRAMACION
HISTORIA Y EVOLUCION DE LOS LENGUAJES DE PROGRAMACIONRYAJPS
 
Clasificacion Lenguajes de Programacion por Su Generacion
Clasificacion Lenguajes de Programacion por Su GeneracionClasificacion Lenguajes de Programacion por Su Generacion
Clasificacion Lenguajes de Programacion por Su GeneracionShirlid .n
 
Evolución de los Lenguajes de Programación.
Evolución de los Lenguajes de Programación.Evolución de los Lenguajes de Programación.
Evolución de los Lenguajes de Programación.Anastacio Mendoza
 
Historia de los Lenguajes de Programación
Historia de los Lenguajes de ProgramaciónHistoria de los Lenguajes de Programación
Historia de los Lenguajes de ProgramaciónLILIANA06
 
Historia de los lenguajes de programación
Historia de los lenguajes de programaciónHistoria de los lenguajes de programación
Historia de los lenguajes de programaciónLincoln School
 
Clasificación de los lenguajes de programación
Clasificación de los lenguajes de programaciónClasificación de los lenguajes de programación
Clasificación de los lenguajes de programaciónd3m3nt3
 
Orden de incentivos 2015
Orden de incentivos 2015Orden de incentivos 2015
Orden de incentivos 2015JuntaInforma
 
Comunidades y redes de formación permanente. Nuevos espacios formativos para...
Comunidades y redes de formación permanente.  Nuevos espacios formativos para...Comunidades y redes de formación permanente.  Nuevos espacios formativos para...
Comunidades y redes de formación permanente. Nuevos espacios formativos para...conectandoredes
 
Giordano bruno
Giordano brunoGiordano bruno
Giordano brunoLOCUER21
 
Pixol 2012
Pixol 2012Pixol 2012
Pixol 2012pixol
 
Power point de déficit de atención
Power point de déficit de atenciónPower point de déficit de atención
Power point de déficit de atenciónCristina Torrejón
 
Proyecto de Integración de TIC´s en mi desempeño docente.
Proyecto de Integración de TIC´s en mi desempeño docente.Proyecto de Integración de TIC´s en mi desempeño docente.
Proyecto de Integración de TIC´s en mi desempeño docente.Terita Mendizábal
 
Ministerio de Jesucristo antes de ascender al cielo
Ministerio de Jesucristo antes de ascender al cieloMinisterio de Jesucristo antes de ascender al cielo
Ministerio de Jesucristo antes de ascender al cieloIACYM Ayacucho
 
Programa torres quevedo pdf
Programa torres quevedo pdfPrograma torres quevedo pdf
Programa torres quevedo pdfDiego Gutierrez
 

Destacado (20)

Comunicación humana por medio de herramientas
Comunicación humana por medio de herramientasComunicación humana por medio de herramientas
Comunicación humana por medio de herramientas
 
HISTORIA Y EVOLUCION DE LOS LENGUAJES DE PROGRAMACION
HISTORIA Y EVOLUCION DE LOS LENGUAJES DE PROGRAMACIONHISTORIA Y EVOLUCION DE LOS LENGUAJES DE PROGRAMACION
HISTORIA Y EVOLUCION DE LOS LENGUAJES DE PROGRAMACION
 
Clasificacion Lenguajes de Programacion por Su Generacion
Clasificacion Lenguajes de Programacion por Su GeneracionClasificacion Lenguajes de Programacion por Su Generacion
Clasificacion Lenguajes de Programacion por Su Generacion
 
Evolución de los Lenguajes de Programación.
Evolución de los Lenguajes de Programación.Evolución de los Lenguajes de Programación.
Evolución de los Lenguajes de Programación.
 
Historia de los Lenguajes de Programación
Historia de los Lenguajes de ProgramaciónHistoria de los Lenguajes de Programación
Historia de los Lenguajes de Programación
 
Historia de los lenguajes de programación
Historia de los lenguajes de programaciónHistoria de los lenguajes de programación
Historia de los lenguajes de programación
 
Clasificación de los lenguajes de programación
Clasificación de los lenguajes de programaciónClasificación de los lenguajes de programación
Clasificación de los lenguajes de programación
 
Orden de incentivos 2015
Orden de incentivos 2015Orden de incentivos 2015
Orden de incentivos 2015
 
Comunidades y redes de formación permanente. Nuevos espacios formativos para...
Comunidades y redes de formación permanente.  Nuevos espacios formativos para...Comunidades y redes de formación permanente.  Nuevos espacios formativos para...
Comunidades y redes de formación permanente. Nuevos espacios formativos para...
 
Giordano bruno
Giordano brunoGiordano bruno
Giordano bruno
 
Pixol 2012
Pixol 2012Pixol 2012
Pixol 2012
 
Leonid afremov
Leonid afremovLeonid afremov
Leonid afremov
 
Guia_Escritorio
Guia_EscritorioGuia_Escritorio
Guia_Escritorio
 
Power point de déficit de atención
Power point de déficit de atenciónPower point de déficit de atención
Power point de déficit de atención
 
Proyecto de Integración de TIC´s en mi desempeño docente.
Proyecto de Integración de TIC´s en mi desempeño docente.Proyecto de Integración de TIC´s en mi desempeño docente.
Proyecto de Integración de TIC´s en mi desempeño docente.
 
Daniela
DanielaDaniela
Daniela
 
Ministerio de Jesucristo antes de ascender al cielo
Ministerio de Jesucristo antes de ascender al cieloMinisterio de Jesucristo antes de ascender al cielo
Ministerio de Jesucristo antes de ascender al cielo
 
Pronombres
PronombresPronombres
Pronombres
 
Programa torres quevedo pdf
Programa torres quevedo pdfPrograma torres quevedo pdf
Programa torres quevedo pdf
 
La maletaluis
La maletaluisLa maletaluis
La maletaluis
 

Similar a Historia de los Lenguajes de Programacion

HISTORIA DE LOS LENGUAJES DE PROGRAMACION GRUPO NUMERO 6
HISTORIA DE LOS LENGUAJES DE PROGRAMACION  GRUPO NUMERO 6HISTORIA DE LOS LENGUAJES DE PROGRAMACION  GRUPO NUMERO 6
HISTORIA DE LOS LENGUAJES DE PROGRAMACION GRUPO NUMERO 6ESTAK6
 
Linea del tiempo de los lenguajes de programación
Linea del tiempo de los lenguajes de programaciónLinea del tiempo de los lenguajes de programación
Linea del tiempo de los lenguajes de programaciónEspitiaGiancarlo
 
historia de la programacion.docx
historia de la programacion.docxhistoria de la programacion.docx
historia de la programacion.docxLeonardoLekat
 
684551811-Computacion-2-Unidad-1.pdf
684551811-Computacion-2-Unidad-1.pdf684551811-Computacion-2-Unidad-1.pdf
684551811-Computacion-2-Unidad-1.pdfYesseniaMolina3
 
Centro de estudios tecnologicos industrial y de servicios
Centro de estudios tecnologicos industrial y de serviciosCentro de estudios tecnologicos industrial y de servicios
Centro de estudios tecnologicos industrial y de serviciosLuisFrancisco02
 
Centro de estudios tecnologicos industrial y de servicios
Centro de estudios tecnologicos industrial y de serviciosCentro de estudios tecnologicos industrial y de servicios
Centro de estudios tecnologicos industrial y de serviciosLuisFrancisco02
 
Historia de los lenguajes de programación escrito
Historia de los lenguajes de programación escritoHistoria de los lenguajes de programación escrito
Historia de los lenguajes de programación escritoramosmendezshura
 
Reportede c#(sharp)(hugo balmore vallejo diaz)
Reportede c#(sharp)(hugo balmore vallejo diaz)Reportede c#(sharp)(hugo balmore vallejo diaz)
Reportede c#(sharp)(hugo balmore vallejo diaz)Hugo Vallejo
 
La historia de la informática
La historia de la informáticaLa historia de la informática
La historia de la informáticamontyoro
 
Historia de las computadoras.
Historia de las computadoras.Historia de las computadoras.
Historia de las computadoras.ysabel21
 
Historia de los lenguajes de programación
Historia de los lenguajes de programaciónHistoria de los lenguajes de programación
Historia de los lenguajes de programaciónpilgrim15
 

Similar a Historia de los Lenguajes de Programacion (20)

HISTORIA DE LOS LENGUAJES DE PROGRAMACION GRUPO NUMERO 6
HISTORIA DE LOS LENGUAJES DE PROGRAMACION  GRUPO NUMERO 6HISTORIA DE LOS LENGUAJES DE PROGRAMACION  GRUPO NUMERO 6
HISTORIA DE LOS LENGUAJES DE PROGRAMACION GRUPO NUMERO 6
 
Lenguajes de programacion
Lenguajes de programacionLenguajes de programacion
Lenguajes de programacion
 
Historia
HistoriaHistoria
Historia
 
Linea del tiempo de los lenguajes de programación
Linea del tiempo de los lenguajes de programaciónLinea del tiempo de los lenguajes de programación
Linea del tiempo de los lenguajes de programación
 
historia de la programacion.docx
historia de la programacion.docxhistoria de la programacion.docx
historia de la programacion.docx
 
684551811-Computacion-2-Unidad-1.pdf
684551811-Computacion-2-Unidad-1.pdf684551811-Computacion-2-Unidad-1.pdf
684551811-Computacion-2-Unidad-1.pdf
 
Centro de estudios tecnologicos industrial y de servicios
Centro de estudios tecnologicos industrial y de serviciosCentro de estudios tecnologicos industrial y de servicios
Centro de estudios tecnologicos industrial y de servicios
 
Centro de estudios tecnologicos industrial y de servicios
Centro de estudios tecnologicos industrial y de serviciosCentro de estudios tecnologicos industrial y de servicios
Centro de estudios tecnologicos industrial y de servicios
 
Historia de los lenguajes de programación escrito
Historia de los lenguajes de programación escritoHistoria de los lenguajes de programación escrito
Historia de los lenguajes de programación escrito
 
Linea del tiempo
Linea del tiempo Linea del tiempo
Linea del tiempo
 
Trabajo de programacion 1
Trabajo de programacion 1 Trabajo de programacion 1
Trabajo de programacion 1
 
Reportede c#(sharp)(hugo balmore vallejo diaz)
Reportede c#(sharp)(hugo balmore vallejo diaz)Reportede c#(sharp)(hugo balmore vallejo diaz)
Reportede c#(sharp)(hugo balmore vallejo diaz)
 
Lenguaje de programación
Lenguaje de programaciónLenguaje de programación
Lenguaje de programación
 
La historia de la informática
La historia de la informáticaLa historia de la informática
La historia de la informática
 
Linea del tiempo
Linea del tiempoLinea del tiempo
Linea del tiempo
 
Linea del tiempo
Linea del tiempoLinea del tiempo
Linea del tiempo
 
Linea del tiempo
Linea del tiempoLinea del tiempo
Linea del tiempo
 
Historia de las computadoras.
Historia de las computadoras.Historia de las computadoras.
Historia de las computadoras.
 
Historia de los lenguajes de programación
Historia de los lenguajes de programaciónHistoria de los lenguajes de programación
Historia de los lenguajes de programación
 
Evolucion de la Programacion
Evolucion de la ProgramacionEvolucion de la Programacion
Evolucion de la Programacion
 

Último

Semana 5-Conceptualización del lenguaje de programación C++
Semana 5-Conceptualización del lenguaje de programación C++Semana 5-Conceptualización del lenguaje de programación C++
Semana 5-Conceptualización del lenguaje de programación C++luzgaray6
 
Introducción a Plone CMS - World Plone Day 2024
Introducción a Plone CMS - World Plone Day 2024Introducción a Plone CMS - World Plone Day 2024
Introducción a Plone CMS - World Plone Day 2024Leonardo J. Caballero G.
 
MacOS SISTEMA OPERATIVO CARACTERISTICAS.pptx
MacOS SISTEMA OPERATIVO CARACTERISTICAS.pptxMacOS SISTEMA OPERATIVO CARACTERISTICAS.pptx
MacOS SISTEMA OPERATIVO CARACTERISTICAS.pptxcalzadillasluis134
 
Theme design in Plone 6 - World Plone Day 2024
Theme design in Plone 6 - World Plone Day 2024Theme design in Plone 6 - World Plone Day 2024
Theme design in Plone 6 - World Plone Day 2024Leonardo J. Caballero G.
 
SISTEMA INTEGRADO DE ADMINISTRACION FINANCIERA - SIAF MODULO ADMINISTRATIVO
SISTEMA INTEGRADO DE ADMINISTRACION FINANCIERA - SIAF MODULO ADMINISTRATIVOSISTEMA INTEGRADO DE ADMINISTRACION FINANCIERA - SIAF MODULO ADMINISTRATIVO
SISTEMA INTEGRADO DE ADMINISTRACION FINANCIERA - SIAF MODULO ADMINISTRATIVOELIAMARYTOVARFLOREZD
 
Presentación de html, css y javascript.
Presentación  de html, css y javascript.Presentación  de html, css y javascript.
Presentación de html, css y javascript.CeteliInmaculada
 

Último (6)

Semana 5-Conceptualización del lenguaje de programación C++
Semana 5-Conceptualización del lenguaje de programación C++Semana 5-Conceptualización del lenguaje de programación C++
Semana 5-Conceptualización del lenguaje de programación C++
 
Introducción a Plone CMS - World Plone Day 2024
Introducción a Plone CMS - World Plone Day 2024Introducción a Plone CMS - World Plone Day 2024
Introducción a Plone CMS - World Plone Day 2024
 
MacOS SISTEMA OPERATIVO CARACTERISTICAS.pptx
MacOS SISTEMA OPERATIVO CARACTERISTICAS.pptxMacOS SISTEMA OPERATIVO CARACTERISTICAS.pptx
MacOS SISTEMA OPERATIVO CARACTERISTICAS.pptx
 
Theme design in Plone 6 - World Plone Day 2024
Theme design in Plone 6 - World Plone Day 2024Theme design in Plone 6 - World Plone Day 2024
Theme design in Plone 6 - World Plone Day 2024
 
SISTEMA INTEGRADO DE ADMINISTRACION FINANCIERA - SIAF MODULO ADMINISTRATIVO
SISTEMA INTEGRADO DE ADMINISTRACION FINANCIERA - SIAF MODULO ADMINISTRATIVOSISTEMA INTEGRADO DE ADMINISTRACION FINANCIERA - SIAF MODULO ADMINISTRATIVO
SISTEMA INTEGRADO DE ADMINISTRACION FINANCIERA - SIAF MODULO ADMINISTRATIVO
 
Presentación de html, css y javascript.
Presentación  de html, css y javascript.Presentación  de html, css y javascript.
Presentación de html, css y javascript.
 

Historia de los Lenguajes de Programacion

  • 1. Historia de los lenguajes de programación. Instituto Tecnológico de Tijuana Programación Estructurada • Integrantes: Islas Sandoval Luis David Miranda Díaz Felipe Alberto Estrada Pérez Manuel Alejandro Hernández Sayas Jorge
  • 2. Los primeros lenguajes de programación preceden a la computadora moderna. En un inicio los lenguajes eran códigos. La máquina del telar de Jacquard, creada en 1801, utilizaba los orificios en tarjetas perforadas para representar los movimientos de un brazo de la máquina de tejer, con el objetivo de generar patrones decorativos automáticamente. Durante un período de nueve meses entre 1842 y 1843, Ada Lovelace tradujo las memorias del matemático italiano Luigi Menabrea acerca de la nueva máquina propuesta por Charles Babbage, la Máquina Analítica.
  • 3. En las primeras décadas del siglo 20, los cálculos numéricos estaban basados en los números decimales. Eventualmente se fueron dando cuenta que la lógica podía ser representada con números, no sólo con palabras. 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 que la programación en lenguaje ensamblador requería de un gran esfuerzo intelectual y era muy propensa a errores. En 1948, Konrad Zuse publicó un artículo acerca de su lenguaje de programación Plankalkül.
  • 4. 50’s y 60’s • Creación de 3 lenguajes modernos: • FORTRAN (1955). • LISP (1958). • COBOL (1959). • Algunos otros lenguajes creados son: 1954 – IPL (Precursor de LISP) 1955 – FLOW-MATIC (Precursor de COBOL) 1957 – COMTRAN (Precursor de COBOL) 1959 – FACT (Precursor de COBOL) 1963 – CPL (Precursor de C) 1964 – BASIC 1967 – BCPL (Precursor de C)
  • 5. Finales de los años 60’s a finales de los 70’s • Simula. Década de los 60’s, por Nygaard y Dahl. • C. Dennis Ritchie y Ken Thompson. Laboratorios Bell, 1969 – 1973. • Prolog. Colmerauer, Roussel, Kowalski. 1972. • Algunos lenguajes importantes son: 1969 – B (Precursor de C) 1970 – Pascal 1972 – C 1972 – Smalltalk 1972 – Prolog
  • 6. 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.
  • 7. Algunos lenguajes importantes que se desarrollaron en este período son: • 1980 - C++ (C con clases, el nombre cambió en Julio de 1983) • 1983 - Ada • 1984 - MATLAB • 1988 - Mathematica
  • 8. En particular, el lenguaje de programación Java se hizo popular debido a su pronta integración con el navegador web Netscape Navigator. Surgieron muchos lenguajes de “aplicaciones de desarrollo rápido” (RAD), pero más radicales e innovadores que los lenguajes de RAD eran los nuevos lenguajes de script.
  • 9. Algunos lenguajes importantes que se desarrollaron en este período son: • 1990 - Haskell • 1991 - Python • 1991 - Visual Basic • 1991 - HTML (lenguaje de marcado de hipertexto) • 1995 - Java • 1995 - JavaScript
  • 10. Personas destacadas en la creacion de lenguajes de programación • John Backus, inventor de Fortran. • Alan Cooper, desarrollador de Visual Basic. • Edsger W. Dijkstra, desarrolló la estructura para la programación estructurada. • James Gosling, desarrollador de Oak, precursor de Java. • Anders Hejlsberg, desarrollador de Turbo Pascal, Delphi y C#. • Alan Kay, pionero en programación orientada a objetos, creador de Smalltalk. • Bertrand Meyer, inventor de Eiffel. • John von Neumann, creador del concepto de sistema operativo.
  • 11. • Martin Odersky, creador de Scala, y previamente contribuyó en el diseño de Java • Dennis Ritchie, inventor de C. Sistema Operativo Unix. • Nathaniel Rochester, inventor del primer lenguaje en ensamblador simbólico (IBM 701). • Bjarne Stroustrup, desarrollador de C++. • Ken Thompson, inventor de B, desarrollador de Go, y coauthor del sistema operativo Unix. • Niklaus Wirth, inventor de Pascal, Modula y Oberon. • Stephen Wolfram, creador de Mathematica. • Abel Tarazona, Creador de Fox23 y fundador de Google Jupiter . • Kattia Vela, Creadora de TNT.
  • 12. Tendencias Actuales • Aumentar el soporte para la programación funcional en lenguajes importantes utilizados comercialmente. • Construir lenguajes para apoyar la programación concurrente y distribuida. • Desarrollo de software orientado a componentes. • Metaprogramación, la reflexión o el acceso al árbol de sintaxis abstracta. • Mayor énfasis en cuanto a distribución y movilidad. • Integración con bases de datos, incluyendo XML y bases de datos relacionales. • XML para interfaz gráfica (XUL, XAML). • El código abierto como una filosofía de desarrollo de lenguajes, • Programación Orientada a Aspectos (AOP). • Lenguajes que soporten programar sobre los procesadores de la GPU en paralelo, como OpenCL.