Simula

Simula

Simula es un lenguaje de programación orientada a objetos (OOP). Fue el primero de los lenguajes orientado a objetos. 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.

Simula 67 fue lanzado oficialmente por sus autores Ole Johan Dahl y Kristen Nygaard en mayo de 1967, en la Conferencia de Trabajo en Lenguajes de Simulación IFIO TC 2, en Lysebu cerca de Oslo

Hoy en día, los creadores de Simula han desarrollado un nuevo lenguaje de programación, llamado Beta, que generaliza todas las construcciones del lenguaje en una única idea denominada patrón.

¡Hola Mundo!

Éste es el famoso programa "Hola Mundo" en Simula 67:

 ! esto es un comentario ;
 Begin comment aquí comienza el programa ;
  OutText("¡Hola Mundo!");
  OutImage;
 End of program;

Clases y objetos

Simula es un lenguaje orientado a objetos. Esto significa que el ejemplo de 'Hola Mundo' también se puede escribir instanciando una clase que se encarga de escribir el saludo.

 ! todo programa empieza con un begin y termina con un end ;
 Begin
 
   Class Saludos;
   Begin
     OutText("¡Hola Mundo!");
     OutImage;
   End of class saludos;
 
   REF(Saludos) objeto;
   objeto :- New Saludos;
 
 End of module program;

Este programa también muestra "¡Hola Mundo!".

El mensaje está codificado en el bloque de código de la clase Saludos. Este bloque de código se ejecuta solamente cuando existe una instancia o variable de tipo Saludos; lo que ocurre efectivamente al crear una instancia por medio de la instrucción New.

En Simula, los objetos siempre son manejados por medio de referencias. Existe un recolector de basura que se encarga de eliminar de la memoria los objetos que se han quedado sin referencias a ellos. Una de estas referencias la vemos con variable objeto. Utilizamos el operador :- para asignar referencias.

A diferencia de muchos lenguajes modernos, Simula entiende de dos tipos de objetos.

Activos son aquellos objetos que aún no han completado su bloque asociado begin/end.

Inactivos por otra parte, han completado su bloque de instrucciones.

Tanto de unos como de otros, es posible ejecutar los procedimientos miembro y consultar los atributos en cualquier momento.

Dado que Simula 67 es un lenguaje ya un poco añejo, los conceptos que maneja son un poco distintos a los actualmente utilizados por la comunidad de programación orientada a objetos. Las instancias a las que estamos habituados corresponden a los objetos inactivos. En tanto que el bloque de instrucciones constituye una serie de constructores.

En cuanto a los objetos activos, estos existen debido a una funcionalidad de pseudo-paralelismo encontrada en Simula y ausente en casi todos los lenguajes modernos. Esta funcionalidad recibe el nombre de co-rutina y es controlada directamente por el lenguaje por medio de un grupo de palabras clave.

Un grupo de objetos activos pueden coexistir en un mismo programa Simula, y transferir el control de unos a otros en cualquier momento. Esta funcionalidad es la base de las características de simulación que dan nombre al lenguaje.

Enlaces externos


Wikimedia foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Mira otros diccionarios:

  • Simula — ist eine Programmiersprache, die von Ole Johan Dahl und Kristen Nygaard in den 1960er Jahren am Norsk Regnesentral (Norwegisches Rechenzentrum) an der Universität Oslo entwickelt wurde, um Simulationen von z. B. physikalischen Prozessen am… …   Deutsch Wikipedia

  • Simula-67 — Simula ist eine Programmiersprache, die von Ole Johan Dahl und Kristen Nygaard in den 1960er Jahren am Norsk Regnesentral (Norwegisches Rechenzentrum) an der Universität Oslo entwickelt wurde, um Simulationen von z. B. physikalischen Prozessen am …   Deutsch Wikipedia

  • Simula — (Simple universal language) a été créé en 1962 sous la dénomination Simula I par Ole Johan Dahl et Kristen Nygaard à partir d Algol 60. Le langage évolua en 1967 sous le nom de Simula 67 en implantant le premier le modèle de classe de Hoare… …   Wikipédia en Français

  • Simula — 67 Семантика: объектно ориентированный Тип исполнения: компилятор Появился в: 1967 г. Автор(ы): Кристен Нюгор и Уле Йохан Даль Типизация данных: статическая Основные реализации: Cim Испытал влияни …   Википедия

  • Simula 67 — Семантика: объектно ориентированный Тип исполнения: компилятор Появился в: 1967 г. Автор(ы): Кристен Нюгор и Уле Йохан Даль Типизация данных: статическая Основные реализации: Cim Испытал влияни …   Википедия

  • simula — SIMULÁ, simulez, vb. I. tranz. A face să pară adevărat ceva ireal; a da, în mod intenţionat, o impresie falsă. ♦ A se preface bolnav, nebun, beat etc. (pentru a obţine un avantaj sau a evita o sancţiune). – Din fr. simuler, lat. simulare. Trimis… …   Dicționar Român

  • SIMULA —   [Kurzwort aus englisch simulation language], Informatik: in den Jahren 1960 67 aus ALGOL 60 entwickelte höhere Programmiersprache mit speziellen Möglichkeiten zur Durchführung von Simulationen auf Rechnersystemen. Das wichtigste mit SIMULA… …   Universal-Lexikon

  • Simula —   [Abk. für Simulation Language, dt. »Simulationssprache«], imperative Programmiersprache mit speziellen Möglichkeiten zur ereignisorientierten Simulation von Abläufen (Prozessen). Die Sprache wurde 1967 in Norwegen auf Basis von Algol 60… …   Universal-Lexikon

  • Simula — es el primer lenguaje de programación orientada a objetos (OOP) que luego de varios años 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… …   Enciclopedia Universal

  • SIMULA — das; s Kurzw. aus engl. simulation language> auf dem ↑ALGOL aufbauende höhere Programmiersprache mit speziellen Möglichkeiten zur Durchführung von Simulationen auf digitalen Datenverarbeitungsanlagen (EDV) …   Das große Fremdwörterbuch

Compartir el artículo y extractos

Link directo
Do a right-click on the link above
and select “Copy Link”