Title
Efficient proxies in Smalltalk
Abstract
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.
Year
DOI
Venue
2011
10.1145/2166929.2166937
IWST
Keywords
Field
DocType
object databases,target object,stratified general purpose proxy,proxy object,regular object,remote method invocation,proxy implementations support proxy,efficient proxy,future object,method execution,proxy implementation,proxy,access control,object oriented programming,message passing,interception
Proxy (climate),Proxy pattern,General purpose,Method,Computer science,Smalltalk,Implementation,Access control,Database,Distributed computing
Conference
Citations 
PageRank 
References 
2
0.37
10
Authors
5
Name
Order
Citations
PageRank
Mariano Martinez Peck1172.48
Noury Bouraqadi29418.92
Marcus Denker328523.94
Stéphane Ducasse43418243.15
Luc Fabresse56215.67