LINEA DE TIEMPO DE LOS COMPILADORES

  • SE CREA EL PRIMER ORDENADOR DIGITAL

    SE CREA EL PRIMER ORDENADOR DIGITAL
    Las instrucciones que se ejecutaban eran códigos numéricos, lenguaje de máquina., esto es engorroso, entonces surgen los ensamblador. Al inicio el programa se escribía mediante claves y luego se traducía manualmente al lenguaje de máquina. Cuando esto lo hizo la misma máquina, a este trabajo se le llamó ensamblar el programa.
  • LENGUAJE ALGEBRAICO

    LENGUAJE ALGEBRAICO
    John Backus dirige una investigación en IBM en un lenguaje algebraico
  • PRIMER COMPILADOR A-0

    PRIMER COMPILADOR    A-0
    Escrito por Grace Hopper en 1951 y 1952 para el UNIVAC I , fue el primer compilador se ha desarrollado para una computadora electrónica. El A-0 funcionaba más como un gestor o vinculador que la noción moderna de un compilador. Un programa se especifica como una secuencia de subrutinas y argumentos. Las subrutinas se identifican mediante un código numérico y los argumentos de las subrutinas fueron escritos directamente después de cada código de subrutina.
  • DESARROLLO FOLTRAN

    se comienza a desarrollar 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.
  • FORTRAN se utiliza en la IBM modelo 704

    FORTRAN se utiliza en la IBM modelo 704
    •Surge el concepto traductor
    •El primer compilador de FORTRAN tardó 18 años-persona en realizarse
    •FORTRAN era dependiente de la máquina
    •Paralelamente al desarrollo de FORTRAN en América, en Europa surge una corriente que pretende que los lenguajes fuesen independientes de la máquina, esta corriente estaba influida por los trabajos sobre GLC de Chomsky
  • Lenguaje Algebraico Internacional

    Lenguaje Algebraico Internacional
    •Surge un grupo Europeo encabezado por F.L. Bauer, en la que participó ACM y John Backus. De este grupo surge un informe que define un Lenguaje Algebraico Internacional, publicado en Zurich
  • COMPILADOR PORTABLE

    •Strong y otros proponen una solución al problema de que un compilador fuera portable, y esta era dividir al compilador en dos fases “front end” (analiza el programa fuente) y “back end” (genera código objeto para la máquina objeto).
    •El puente de unión era un lenguaje intermedio denominado UNCOL –Universal Computer Oriented Language(no funcionó)
  • IMPLEMENTACION DE LOS AFD Y AFN

    IMPLEMENTACION DE LOS AFD Y AFN
    •Rabin y Scott proponen el empleo de AFD y AFN para el reconocimiento lexicográfico de los lenguajes
    •Aparece BNF (Backus-1960, Naur-1963, Knuth-1964) como una guía para el desarrollo del análisis sintáctico
    •Sheridan describe un método de parsing de FORTRAN para introducir paréntesis en una expresión
  • LANZAMIENTO DEL LENGUAJE COBOL

    LANZAMIENTO DEL LENGUAJE COBOL
    El lenguaje COBOL (acrónimo de COmmon Business-Oriented Language, Lenguaje Común Orientado a Negocios) fue creado con el objetivo de crear un lenguaje de programación universal que pudiera ser usado en cualquier ordenador, y que estuviera orientado principalmente a los negocios, es decir, a la llamada informática de gestión.
  • PARSING DESCENDENTES

    PARSING: Análisis sintáctico es el proceso de analizar una cadena de símbolos
    •Se usa por primera vez un parsing descendente recursivo
    •se estudia el paso de parámetros por nombre, valor y referencia y se incluyen los procedimientos recursivos para Algol 60
    •Se desarrolla la localización dinámica de datos
  • LANZAMIENTO DE SIMULA 62

    Simula es un lenguaje de programación orientada a objetos (POO). 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. Compilador IBM System 360/370
  • PARSERS PREDICTIVOS

    •Se estudia y definen las GLC, los parsers predictivos y la eliminación de recursividad izquierda
  • APARECE EL ALGOL 60

    APARECE EL ALGOL 60
    *Junto con los lenguajes también la técnica de los compiladores avanza.
    *Acronimo de de las palabras inglesas Algorithmic Language (lenguaje algorítmico).
    *Predecesor de los lenguajes Pascal, C y Ada.
  • PUBLICACION DEL LENGUAJE PASCAL

    PUBLICACION DEL LENGUAJE PASCAL
    *lenguaje creado por el profesor suizo Niklaus Wirth.
    *Su objetivo era crear un lenguaje que facilitara el aprendizaje de programación a sus alumnos, utilizando la programación estructurada y estructuración de datos. Sin embargo con el tiempo su utilización excedió el ámbito académico para convertirse en una herramienta para la creación de aplicaciones de todo tipo.
    Pascal se caracteriza por ser un lenguaje de programación estructurado.
  • CREACION DE LEX Y YACC

    •1975, aparece LEX generador automático de analizadores léxicos a partir de expresiones regulares bajo UNIX
    •Johnson crea YACC para UNIX (generador de analizadores sintácticos)
    •Ahora un compilador de divide en varias fases
  • EVOLUCION DE LOS COMPILADORES EN IDE

    EVOLUCION DE LOS COMPILADORES EN IDE
    -Entorno de Desarrollo Integrado (IDE):
    un IDE consiste de un editor de código fuente, herramientas de construcción automáticas y un depurador. La mayoría de los IDE tienen auto-completado inteligente de código (IntelliSense). Algunos IDE contienen un compilador, un intérprete, o ambos.
    -El primer IDE fue el MAESTRO I desarrollado por Softlab Munich .
  • LANZAMIENTO DE TURBO C

    LANZAMIENTO DE TURBO C
    Este era un compilador de C y un IDE que permitia el desarrollo en el sistema operativo DOS y fue el antecesor de BORLAND C.
  • CREACION DE JAVA

    CREACION DE JAVA
    lenguaje de programación de propósito general, concurrente, orientado a objetos que fue diseñado específicamente para tener tan pocas dependencias de implementación como fuera posible. Su intención es permitir que los desarrolladores de aplicaciones escriban el programa una vez y lo ejecuten en cualquier dispositivo (conocido en inglés como WORA, o "write once, run anywhere"),
  • LANZAMIENTO DEL IDE NETBEANS

    LANZAMIENTO DEL IDE NETBEANS
    La plataforma NetBeans permite que las aplicaciones sean desarrolladas a partir de un conjunto de componentes de software llamados módulos. Un módulo es un archivo Java que contiene clases de java escritas para interactuar con las APIs de NetBeans y un archivo especial (manifest file) que lo identifica como módulo.