Skip to main content

On State Classes and Their Dynamic Semantics

  • Conference paper
Software and Data Technologies (ICSOFT 2006)

Part of the book series: Communications in Computer and Information Science ((CCIS,volume 10))

Included in the following conference series:

  • 612 Accesses

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 109.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Philippsen, M.: A Survey of Concurrent Object-Oriented Languages. Concurrency Computat.: Pract. Exper. 12, 917–980 (2000)

    MATH  Google Scholar 

  2. Damiani, F., Giachino, E., Giannini, P., Cameron, N., Drossopoulou, S.: A state abstraction for coordination in java-like languages. In: Electronic proceedings of FTfJP 2006 (2006), www.cs.ru.nl/ftfjp/

  3. Birrel, A.D.: An introduction to programming with threads. Technical Report 35, DEC SRC (1989)

    Google Scholar 

  4. Benton, N., Cardelli, L., Fournet, C.: Modern Concurrency Abstractions for C\(\sharp\). ACM TOPLAS 26, 769–804 (2004)

    Article  Google Scholar 

  5. Igarashi, A., Pierce, B., Wadler, P.: Featherweight Java: A minimal core calculus for Java and GJ. ACM TOPLAS 23, 396–450 (2001)

    Article  Google Scholar 

  6. Parr, T.: project group: ANTLR Reference Manual, Version 2.7.5 (2005), http://www.antlr.org/doc/index.html

  7. Parr, T.: StringTemplate Documentation, (2003-2005), http://www.stringtemplate.org/doc/doc.html

  8. Agha, G.A.: ACTORS: A Model of Concurrency Computation in Distribuited Systems. MIT Press, Cambridge (1986)

    Google Scholar 

  9. Kafura, D.G., Lavender, R.G.: Concurrent object-oriented languages and the inheritance anomaly. In: Casavant, T., Tvrdil, P., Plásil, F. (eds.) Parallel Computers: Theory and Practice, pp. 221–264. IEEE Press, Los Alamitos (1996)

    Google Scholar 

  10. Tomlinson, C., Singh, V.: Inheritance and synchronization with enabled-sets. In: OOPSLA 1989, pp. 103–112. ACM Press, New York (1989)

    Chapter  Google Scholar 

  11. Nierstrasz, O.: Regular Types for Active Objects. In: OOPSLA 1993. ACM SIGPLAN Notices, vol. 28, pp. 1–15 (1993)

    Google Scholar 

  12. Ravara, A., Vasconcelos, V.T.: Typing Non-uniform Concurrent Objects. In: Palamidessi, C. (ed.) CONCUR 2000. LNCS, vol. 1877, pp. 474–488. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  13. Damiani, F., Dezani-Ciancaglini, M., Giannini, P.: On re-classification and multithreading. JOT, 3, 5–30 (2004), http://www.jot.fm ; Special issue: OOPS track at SAC 2004

  14. Itzstein, G.S., Kearney, D.: Join Java: an alternative concurrency semantics for Java. Technical Report ACRC-01-001, Univ. of South Australia (2001)

    Google Scholar 

  15. Milicia, G., Sassone, V.: Jeeg: Temporal Constraints for the Synchronization of Concurrent Objects. Concurrency Computat.: Pract. Exper. 17, 539–572 (2005)

    Article  Google Scholar 

  16. Keen, A.W., Ge, T., Maris, J.T., Olsson, R.A.: JR: Flexible distributed programming in an extended java. TOPLAS 26, 578–608 (2004)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Joaquim Filipe Boris Shishkov Markus Helfert

Rights and permissions

Reprints and permissions

Copyright information

© 2008 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Damiani, F., Giachino, E., Giannini, P., Cazzola, E. (2008). On State Classes and Their Dynamic Semantics. In: Filipe, J., Shishkov, B., Helfert, M. (eds) Software and Data Technologies. ICSOFT 2006. Communications in Computer and Information Science, vol 10. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-70621-2_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-70621-2_8

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-70619-9

  • Online ISBN: 978-3-540-70621-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics