Efficient Proxies in Smalltalk - Inria - Institut national de recherche en sciences et technologies du numérique Access content directly
Conference Papers Year : 2011

Efficient Proxies in Smalltalk


A proxy object is a surrogate or placeholder that controls access to another target object. Proxy objects are a widely used solution for different scenarios such as remote method invocation, future objects, behavioral reflection, object databases, inter-languages communications and bindings, access control, lazy or parallel evaluation, security, among others. Most proxy implementations support proxies for regular objects but they are unable to create proxies for classes or methods. Proxies can be complex to install, have a significant overhead, be limited to certain type of classes, etc. Moreover, most proxy implementations are not stratified at all and there is no separation between proxies and handlers. In this paper, we present Ghost, a uniform, light-weight and stratified general purpose proxy model and its Smalltalk implementation.Ghost supports proxies for classes or methods. When a proxy takes the place of a class it intercepts both, messages received by the class and lookup of methods for messages received by instances. Similarly, if a proxy takes the place of a method, then the method execution is intercepted too.
Fichier principal
Vignette du fichier
Mart11a-IWST11-Marea.pdf (284.66 Ko) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

inria-00614720 , version 1 (15-08-2011)


  • HAL Id : inria-00614720 , version 1


Marcus Denker, Mariano Martinez Peck, Noury Bouraqadi, Luc Fabresse, Stéphane Ducasse. Efficient Proxies in Smalltalk. International Workshop on Smalltalk Technologies (IWST 2011), ESUG, Aug 2011, Edinburgh, United Kingdom. ⟨inria-00614720⟩
1271 View
1132 Download


Gmail Facebook X LinkedIn More