Historia de los lenguajes de programacion

  • Fortran (FORmulaTRANslator) (1954-1957)

    Fortran (FORmulaTRANslator) (1954-1957)
    Diseñado por la John Backus para programación científica y de computación
    Ultima versión Fortran90
    Sus compiladores siguen siendo de los mas eficientes, produciendo código de muy rápida ejecución
  • Algol60 (ALGOrithmicLanguage) (1958-1960)

    Algol60 (ALGOrithmicLanguage) (1958-1960)
    Fue desarrollado por un comité con el objetivo de crear un lenguaje general y expresivo para la descripción de los algoritmos de investigación o aplicaciones practica
    La mayoría de los lenguajes imperativos derivan del Algol, incluyendo Pascal, C y Ada
    Introdujo técnicas como los bloques de inicio-fin, declaración del tipo de las variables, recursión y el paso de parámetros por valor
    Fue el primero en utilizar los formatos Backus-Naur (BNF) para la definición de la sintaxis
  • Cobol (CommonBusiness-OrientedLanguage) (1959-1960)

    Cobol (CommonBusiness-OrientedLanguage) (1959-1960)
    Desarrollado por el departamento de defensa, USA
    Fue rápidamente adoptado por bancos y empresas
    Sigue siendo muy utilizado por empresas
    Es ignorado por la comunidad académica
    La sintaxis es complicada por la alta verbosidad de la auto documentación
  • LISP (LIStProcessor) (1959)

    Desarrollado por John McCarthy
    Estada basado en las estructuras de listas generales y en la aplicación de funciones
    Actualmente se sigue usando junto con sus variantes (MacLisp, FranzLisp, Scheme) en muchas aplicaciones de IA
    Introdujo el concepto de “recolección de basura” –recuperación automática de memoria no utilizada
    Dado que no se basa en el concepto de Von Neumann no puede ser ejecutado eficientemente en las maquinas existentes
  • SNOBOL (StriNgOrientedsymBOlicLanguage)

    SNOBOL (StriNgOrientedsymBOlicLanguage)
    Ampliamente utilizado y ofreció contribuciones significativas y duraderas
    Desarrollado en los Laboratorios Bell por R. Griswold–1961-1962
    Fue uno de los primeros lenguajes de procesamiento de cadenas
  • PL/I (1963 –1964)

    PL/I (1963 –1964)
    Pretendía combinar las mejores características de Fortran, Cobol y Algol
    Agregar manejo de concurrencia y excepciones
    Sin embargo los traductores resultaron dificilesde escribir, lentos, grandes y nada seguros
    El lenguaje era difícil de aprender y propenso a errores al escribir por el elevado numero de interacciones no previsibles entre las características
    Se dice que fue creado antes de tiempo, ya que algunas de sus características aun no eran bien comprendidas
  • BASIC (BeginnersAll-purposeSymbolicInstructionCode) –1964

    BASIC (BeginnersAll-purposeSymbolicInstructionCode) –1964
    Diseñado por John Kemenyy Thomas Kurtzen el Colegio Darmouth
    Se origino como un sistema simple para los nuevos sistemas de tiempo compartido de la época
    Sufrió una transición natural, 10 años después, hacia las PCs
    Basic no es un lenguaje sino una familia de lenguajes
    De hecho existen dos estándares independientes emitidos por ANSI: Basic mínimo –1978 y Basic completo –1988
  • PASCAL (1970)

    PASCAL (1970)
    Creado por Niklaus Wirth
    Fue riguroso en su rechazo a Algol68
    Publico una replica mejorada Algol-W
    Era una refinación de las ideas de Algol
    Era pequeño, simple, eficiente, y estructurado
    Pensado para la enseñanza de la programación
    Obtuvo un éxito increíble dentro como fuera de la academia a pesar de sus limitaciones
  • C (1972)

    C (1972)
    Dennis Ritchie
    1972 –Diseña, en los laboratorios Bell, otro derivado de Algol, el C
    Tiene mucho éxito porque
    Reduce la complejidad del sistema de tipos
    Reduce el entorno en tiempo de ejecución
    Da un fácil acceso a la maquina, por lo cual es considerado un lenguaje de nivel intermedio contrario a los lenguajes de alto nivel
    Se adapta muy bien para la programación de sistemas operativos
    UNIX fue escrito en C
  • ADA (1980)

    ADA (1980)
    Desarrollado por un grupo del Departamento de Defensa, USA, liderado por J. Ichbiah
    Incluye el concepto de paquete –TDA
    Herramientas para la concurrencia en la programación paralela
    Estaba cuidadosamente diseñado y se basaba en la mejor investigación de los 70s
    Tuvo en contra su tamaño, complejidad y un estricto control del gobierno, por lo que fue difícil crear sus compiladores
  • C++ (1980-1984)

    C++ (1980-1984)
    Aprovechaba la portabilidad y popularidad de C y podía ejecutarse casi en cualquier parte
    Desde entonces se le ha agregado muchas características y uno enorme cantidad de bibliotecas
    Se ha convertido en un lenguaje muy grande, difícil de implementar, difícil de comprender en su totalidad
    Con la popularidad que alcanzo la OO en los 80s se crearon muchos otros lenguajes Modula-3, Oberon, Eifeel, pero ninguno alcanzo la popularidad de C++
  • Modula-2

    Modula-2
    Fue diseñado por NiklausWirth(1982) como el sucesor de Pascal
    Se baso en un lenguaje anterior, Modula, que se había creado para la construcción de sistemas operativos
    Introduce el concepto de modulo, similar aunque mas restrictivo que el paquete de ADA
    Tenia un limitado apoyo a los TDA, un sistema restrictivo de tipos de datos y no manejaba excepciones
    Fue un reemplazo popular de Pascal en la educación
    No fue utilizado en proyectos grandes de software
  • Java (1995)

    Java (1995)
    Posteriormente se revisa para aplicarlo en la Web y la Red
    Suninicio una campaña publicitaria como nunca antes vista, para un lenguaje de programación
    Es un lenguaje OO
    Relativamente simple
    Desde su inicio conto con una amplia biblioteca de herramientas para ventanas, redes y concurrencia
    Su popularidad en los primeros 5 años fue asombrosa
    Actualmente se sigue utilizando en aplicaciones para Internet, redes, aplicaciones generales e instrucción en las universidades