Articulo de referencia

Ágora (lenguaje de programación)

Agora es un lenguaje de programación orientado a objetos , reflexivo y basado en prototipos , que se basa exclusivamente en el paso de mensajes y no en la delegación . Agora fue...

Agora es un lenguaje de programación orientado a objetos , reflexivo y basado en prototipos , que se basa exclusivamente en el paso de mensajes y no en la delegación . Agora fue concebido para demostrar que, incluso con esa limitación, es posible construir un lenguaje orientado a objetos completo que incluya herencia , clonación y operadores reflexivos .

Descripción general

La idea es que un objeto esté completamente encapsulado y solo pueda interactuar mediante el paso de mensajes. Sin embargo, desde su interior, el objeto conoce a la perfección su propia estructura. Por lo tanto, es totalmente capaz de clonarse y extenderse. Esto se logra mediante métodos especiales denominados métodos de clonación y métodos mixin .

Agora se ha implementado en C++ , Java , Scheme y Smalltalk . Agora98, la última implementación de Agora, desarrollada en Java, permite el acceso completo a todas las interfaces de programación de aplicaciones ( API ) de Java, incluyendo la posibilidad de crear applets de Java desde Agora98. Desde el punto de vista del lenguaje, Agora98 representa una simplificación considerable respecto a las versiones anteriores de Agora.

Referencias

  • Agora98: Programación reflexiva en un navegador web , presentado a ECOOP98.
  • Un matrimonio de herencia basada en clases y objetos sin hijos no deseados , Actas de ECOOP'95, Springer-Verlag 1995.
  • Agora: El paso de mensajes como base para explorar conceptos de lenguajes orientados a objetos , SIGPLAN Notices, 29(12):48-57, diciembre de 1994.
  • Herencia modular de objetos mediante métodos mixin , Actas de JMLC'94.
  • Métodos Mixin Anidados en Agora , Actas de ECOOP93, Springer-Verlag, 1993.
  • Sitio web oficial