ON STATE CLASSES AND THEIR DYNAMIC SEMANTICS
Ferruccio Damiani, Elena Giachino, Paola Giannini, Emanuele Cazzola
2006
Abstract
We introduce state classes, a construct to program objects that can be safely concurrently accessed. State classes model the notion of object’s state (intended as some abstraction over the value of fields) that plays a key role in concurrent object-oriented programming (as the state of an object changes, so does its coordination behavior). We show how state classes can be added to Java-like languages by presenting STATEJ, an extension of JAVA with state classes. The operational semantics of the state class construct is illustrated both at an abstract level, by means of a core calculus for STATEJ, and at a concrete level, by defining a translation from STATEJ into JAVA.
References
- Agha, G. A. (1986). ACTORS: A Model of Concurrency Computation in Distribuited Systems. MIT Press.
- Benton, N., Cardelli, L., and Fournet, C. (2004). Modern Concurrency Abstractions for C?. ACM TOPLAS, 26(5):769-804.
- Birrel, A. D. (1989). An introduction to programming with threads. Technical Report 35, DEC SRC.
- Damiani, F., Dezani-Ciancaglini, M., and Giannini, P. (2004). On re-classification and multithreading. JOT (www.jot.fm), 3(11):5-30. Special issue: OOPS track at SAC 2004.
- Damiani, F., Giachino, E., Giannini, P., Cameron, N., and Drossopoulou, S. (2006). A state abstraction for coordination in java-like languages. In Electronic proceedings of FTfJP'06 (www.cs.ru.nl/ftfjp/).
- Igarashi, A., Pierce, B., and Wadler, P. (2001). Featherweight Java: A minimal core calculus for Java and GJ. ACM TOPLAS, 23(3):396-450.
- Itzstein, G. S. and Kearney, D. (2001). Join Java: an alternative concurrency semantics for Java. Technical Report ACRC-01-001, Univ. of South Australia.
- Kafura, D. G. and Lavender, R. G. (1996). Concurrent object-oriented languages and the inheritance anomaly. In Casavant, T., Tvrdil, P., and Plásil, F., editors, Parallel Computers: Theory and Practice, pages 221-264. IEEE Press.
- Keen, A. W., Ge, T., Maris, J. T., and Olsson, R. A. (2004). JR: Flexible distributed programming in an extended java. TOPLAS, 26(3):578-608.
- Milicia, G. and Sassone, V. (2005). Jeeg: Temporal Constraints for the Synchronization of Concurrent Objects. Concurrency Computat.: Pract. Exper., 17(5- 6):539-572.
- Nierstrasz, O. (1993). Regular Types for Active Objects. In OOPSLA'93, volume 28 of ACM SIGPLAN Notices, pages 1-15.
- T. (2003-2005). StringTemplate Documentation. Available at www.stringtemplate.org./doc/doc.html.
- Parr, T. and project group (2005). erence Manual, Version 2.7.5. www.antlr.org./doc/index.html.
- Philippsen, M. (2000). A Survey of Concurrent ObjectOriented Languages. Concurrency Computat.: Pract. Exper., 12(10):917-980.
- Ravara, A. and Vasconcelos, V. T. (2000). Typing Nonuniform Concurrent Objects. In CONCUR'00, volume 1877 of LNCS, pages 474-488, Berlin. Springer.
- Tomlinson, C. and Singh, V. (1989). Inheritance and synchronization with enabled-sets. In OOPSLA'89, pages 103-112. ACM.
Paper Citation
in Harvard Style
Damiani F., Giachino E., Giannini P. and Cazzola E. (2006). ON STATE CLASSES AND THEIR DYNAMIC SEMANTICS . In Proceedings of the First International Conference on Software and Data Technologies - Volume 1: ICSOFT, ISBN 978-972-8865-69-6, pages 5-12. DOI: 10.5220/0001317700050012
in Bibtex Style
@conference{icsoft06,
author={Ferruccio Damiani and Elena Giachino and Paola Giannini and Emanuele Cazzola},
title={ON STATE CLASSES AND THEIR DYNAMIC SEMANTICS},
booktitle={Proceedings of the First International Conference on Software and Data Technologies - Volume 1: ICSOFT,},
year={2006},
pages={5-12},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0001317700050012},
isbn={978-972-8865-69-6},
}
in EndNote Style
TY - CONF
JO - Proceedings of the First International Conference on Software and Data Technologies - Volume 1: ICSOFT,
TI - ON STATE CLASSES AND THEIR DYNAMIC SEMANTICS
SN - 978-972-8865-69-6
AU - Damiani F.
AU - Giachino E.
AU - Giannini P.
AU - Cazzola E.
PY - 2006
SP - 5
EP - 12
DO - 10.5220/0001317700050012