Agora (programovací jazyk) - Agora (programming language)
Agora je reflexní, na základě prototypu, objektově orientované programování Jazyk který je založen výhradně na předávání zpráv a ne delegace. Agora měla ukázat, že i při dodržení tohoto limitu je možné vytvořit plně objektově orientovaný jazyk, který se vyznačuje dědictví, klonování a reflexní operátory.
Přehled
Myšlenka je, že objekt je plně zapouzdřený a může být předmětem pouze předávání zpráv. Při pohledu zevnitř objektu však objekt ví všechno o svých vlastních strukturách. Je tedy dokonale schopen klonovat a rozšiřovat se. Toho je dosaženo pomocí speciálních metod zvaných klonování metody a mixin metody.
Agora98, nejnovější implementace Agory, se provádí v Jáva a umožňuje plný přístup ke všem prostředím Java API, včetně schopnosti tvořit applety zevnitř Agora98. Z jazykového hlediska je Agora98 značným zjednodušením předchozích verzí Agory.
Reference
- Agora98: Reflexní programování ve webovém prohlížeči, Odesláno na ECOOP98.
- Manželství třídního a objektového dědictví bez nechtěných dětí, Proceedings of ECOOP'95, Springer-Verlag 1995.
- Agora: Předávání zpráv jako základ pro zkoumání koncepcí jazyků OO, SIGPLAN Notices, 29 (12): 48-57, prosinec 1994.
- Modulární dědičnost objektů metodami MixinSborník JMLC'94.
- Vnořené metody Mixin v Agora, Proceedings of ECOOP93, Springer-Verlag, 1993.