Simula


Simula es el nombre de dos lenguajes de programación de simulación , Simula I y Simula 67, desarrollados en la década de 1960 en el Norwegian Computing Center en Oslo , por Ole-Johan Dahl y Kristen Nygaard . Sintácticamente , es un superconjunto aproximado de ALGOL 60 , [1] : 1.3.1  y también fue influenciado por el diseño de Simscript . [2]

Simula 67 introdujo objetos , [1] : 2, 5.3  clases , [1] : 1.3.3, 2  herencia y subclases , [1] : 2.2.1  procedimientos virtuales , [1] : 2.2.3  corrutinas , [1] : 9.2  y simulación de eventos discretos , [1] : 14.2  y recolección de basura destacada . [1] : 9.1  Se introdujeron otras formas de subtipificación (además de heredar subclases) en los derivados de Simula. [ cita requerida ]

Simula se considera el primer lenguaje de programación orientado a objetos . Como sugiere su nombre, la primera versión de Simula de 1962 fue diseñada para realizar simulaciones ; Sin embargo, Simula 67 fue diseñado para ser un lenguaje de programación de propósito general [3] y proporcionó el marco para muchas de las características de los lenguajes orientados a objetos en la actualidad.

Simula se ha utilizado en una amplia gama de aplicaciones, como la simulación de diseños de integración a muy gran escala (VLSI), modelado de procesos , protocolos de comunicación , algoritmos y otras aplicaciones como composición tipográfica , gráficos por computadora y educación . La influencia de Simula a menudo se subestima y los objetos de tipo Simula se vuelven a implementar en C ++ , Object Pascal , Java , C # y muchos otros lenguajes. Informáticos como Bjarne Stroustrup , creador de C ++, y James Gosling, creador de Java, han reconocido a Simula como una gran influencia. [4]

Kristen Nygaard comenzó a escribir programas de simulación por computadora en 1957. Nygaard vio la necesidad de una mejor manera de describir la heterogeneidad y el funcionamiento de un sistema. Para ir más allá con sus ideas sobre un lenguaje informático formal para describir un sistema, Nygaard se dio cuenta de que necesitaba a alguien con más habilidades de programación informática que él. Ole-Johan Dahl se unió a él en su trabajo de enero de 1962. La decisión de vincular el idioma a ALGOL 60 se tomó poco después. En mayo de 1962, se establecieron los conceptos principales para un lenguaje de simulación . SIMULA I nació, un lenguaje de programación de propósito especial para simular sistemas de eventos discretos.

Kristen Nygaard fue invitada a visitar la Corporación de Computadoras Eckert-Mauchly a fines de mayo de 1962 en relación con la comercialización de su nueva computadora UNIVAC 1107 . En esa visita, Nygaard presentó las ideas de Simula a Robert Bemer , director de programación de sistemas de Univac . Bemer era un gran admirador de ALGOL y encontró convincente el proyecto Simula. Bemer también fue presidente de una sesión en la segunda conferencia internacional sobre procesamiento de información organizada por la Federación Internacional de Procesamiento de Información (IFIP). Invitó a Nygaard, quien presentó el documento "SIMULA - Una extensión de ALGOL a la descripción de redes de eventos discretos".