@gron

Using Metaobject Protocols to Implement Atomic Data Types

, and . Proceedings of the 9th European Conference on Object-Oriented Programming, ECOOP '95, volume 952 of LNCS, page 168--189. Springer-Verlag, (1995)
DOI: 10.1007/3-540-49538-X_9

Abstract

Many researchers have suggested using atomic data types to implement transactions as a way of achieving atomicity in a modular, encapsulated fashion. However, in practice, implementing user-defined atomic data types is a difficult task. Existing systems fail to make a clean separation between application code and the synchronisation/recovery code needed to guarantee atomicity, and thus make it very hard for programmers to make changes to a system to meet their particular needs. In this paper, we present a metaobject protocol approach to implementing atomic data types. With this approach, application code is implemented at the base level, whilst the synchronisation and recovery code necessary to ensure atomicity is implemented at the meta level in the form of metaobjects. New schemes for ensuring atomicity can be provided for particular applications by introducing new metaobjects into the system without a need to make any changes at the base level. Furthermore, it is possible for an atomic data object to adapt its mechanism for ensuring atomicity dynamically by changing its metaobject at run time.

Description

Using Metaobject Protocols to Implement Atomic Data Types

Links and resources

Tags

community

  • @gron
  • @dblp
@gron's tags highlighted