Mirror-based reflection in AmbientTalk

Mostinckx, S; Van Cutsem, T; Timbermont, S; Boix, EG; Tanter É.; De Meuter, W

Abstract

This paper introduces a novel mechanism to perform intercession (a form of reflection) in an objectoriented programming language with the goal of making the language extensible from within itself. The proposed mechanism builds upon a mirror-based architecture, leading to a reusable reflective application programming interface that cleanly separates interface from implementation details. However, support for intercession has been limited in contemporary mirror-based architectures. This is due to the fact that mirror-based architectures only support reflection explicitly triggered by metaprograms, while intercession requires reflection implicitly triggered by the language interpreter. This work reconciles mirrors with intercession in the context of an actor-based, object-oriented programming language named AmbientTalk. We describe this language's full reflective architecture, highlighting its novel mirror-based approach to reflect upon both objects and concurrently executing actors. Subsequently, we apply AmbientTalk's mirror-based reflection to implement two language features, which crucially depend on intercession, to wit future-type message passing and leased object references © 2008 John Wiley & Sons, Ltd.

Más información

Título según WOS: Mirror-based reflection in AmbientTalk
Título según SCOPUS: Mirror-based reflection in ambienttalk
Título de la Revista: SOFTWARE-PRACTICE & EXPERIENCE
Volumen: 39
Número: 7
Editorial: Wiley
Fecha de publicación: 2009
Página de inicio: 661
Página final: 699
Idioma: English
URL: http://doi.wiley.com/10.1002/spe.909
DOI:

10.1002/spe.909

Notas: ISI, SCOPUS