Advertisement

A Class-Based Object Calculus of Dynamic Binding: Reduction and Properties

  • Paweł T. Wojciechowski
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4089)

Abstract

To be able to compose and decompose software components at run time, some form of dynamic rebinding between components (or objects) is needed. In this paper, we identify basic properties of dynamic object (re)binding, and propose a class-based object calculus that gives precise meaning to these properties. We also define two example semantic properties that are characteristic for many concurrent programs with low-level bind/unbind operations. Our calculus has a built-in construct atomic that can be used to implement one of the semantic properties.

Keywords

lambda and object calculi dynamic binding atomicity 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [AC95]
    Abadi, M., Cardelli, L.: An imperative object calculus. In: Mosses, P.D., Schwartzbach, M.I., Nielsen, M. (eds.) CAAP 1995, FASE 1995, and TAPSOFT 1995. LNCS, vol. 915. Springer, Heidelberg (1995)Google Scholar
  2. [BDW03]
    Bergel, A., Ducasse, S., Wuyts, R.: Classboxes: A minimal module model supporting local rebinding. In: Böszörményi, L., Schojer, P. (eds.) JMLC 2003. LNCS, vol. 2789, pp. 122–131. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  3. [BHS+03]
    Bierman, G., Hicks, M., Sewell, P., Stoyle, G., Wansbrough, K.: Dynamic rebinding for marshalling and update, with destruct-time lambda. In: Proc. ICFP 2003 (August 2003) Google Scholar
  4. [DLE03]
    Drossopoulou, S., Lagorio, G., Eisenbach, S.: Flexible models for dynamic linking. In: Degano, P. (ed.) ESOP 2003. LNCS, vol. 2618, pp. 38–53. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  5. [FQ03]
    Flanagan, C., Qadeer, S.: A type and effect system for atomicity. In: Proc. PLDI 2003 (June 2003)Google Scholar
  6. [GH98]
    Gordon, A.D., Hankin, P.D.: A concurrent object calculus: Reduction and typing. In: Proc. HLCL 1998: the 3rd Int’l Workshop on High-Level Concurrent Languages. ENTCS, vol. 16(3). Elsevier, Amsterdam (1998)Google Scholar
  7. [HF03]
    Harris, T., Fraser, K.: Language support for lightweight transactions. In: Proc. OOPSLA 2003 (2003)Google Scholar
  8. [IPW99]
    Igarashi, A., Pierce, B., Wadler, P.: Featherweight Java: A minimal core calculus for Java and GJ. In: Proc. OOPSLA 1999 (November 1999)Google Scholar
  9. [LF93]
    Lee, S.-D., Friedman, D.P.: Quasi-static scoping: Sharing variable bindings across multiple lexical scopes. In: Proc. POPL 1993 (Janurary 1993)Google Scholar
  10. [Low96]
    Lowe, G.: Breaking and fixing the Needham-Schroeder public-key protocol using FDR. In: Margaria, T., Steffen, B. (eds.) TACAS 1996. LNCS, vol. 1055. Springer, Heidelberg (1996)Google Scholar
  11. [LPSW03]
    Leifer, J., Peskine, G., Sewell, P., Wansbrough, K.: Global abstraction-safe marshalling with hash types. In: Proc. ICFP 2003 (2003)Google Scholar
  12. [MIT]
  13. [Mor98]
    Moreau, L.: A syntactic theory of dynamic binding. Higher-Order and Symbolic Computation 11(3), 233–279 (1998)zbMATHCrossRefGoogle Scholar
  14. [MPG+00]
    Malabarba, S., Pandey, R., Gragg, J., Barr, E., Barnes, J.F.: Runtime support for type-safe dynamic Java classes. In: Bertino, E. (ed.) ECOOP 2000. LNCS, vol. 1850, p. 337. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  15. [Plo75]
    Plotkin, G.D.: Call-by-name, call-by-value and the λ-calculus. Theoretical Computer Science 1, 125–159 (1975)zbMATHCrossRefMathSciNetGoogle Scholar
  16. [RWS06a]
    Rütti, O., Wojciechowski, P.T., Schiper, A.: Service Interface: A new abstraction for implementing and composing protocols. In: Biham, E., Youssef, A.M. (eds.) SAC 2006. LNCS, vol. 4356. Springer, Heidelberg (2007)Google Scholar
  17. [RWS06b]
    Rütti, O., Wojciechowski, P.T., Schiper, A.: Structural and algorithmic issues of dynamic protocol update. In: Proc. IPDPS 2006: the 20th IEEE Int’l Parallel and Distributed Processing Symposium (April 2006)Google Scholar
  18. [VJWH04]
    Vitek, J., Jagannathan, S., Welc, A., Hosking, A.L.: A semantic framework for designer transactions. In: Schmidt, D. (ed.) ESOP 2004. LNCS, vol. 2986, pp. 249–263. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  19. [Woj05]
    Wojciechowski, P.T.: Isolation-only transactions by typing and versioning. In: Proc. PPDP 2005: the 7th ACM-SIGPLAN Int’l Symposium on Principles and Practice of Declarative Programming (July 2005)Google Scholar
  20. [WR05]
    Wojciechowski, P.T., Rütti, O.: On correctness of dynamic protocol update. In: Steffen, M., Zavattaro, G. (eds.) FMOODS 2005. LNCS, vol. 3535, pp. 275–289. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  21. [WRS04]
    Wojciechowski, P.T., Rütti, O., Schiper, A.: SAMOA: A framework for a synchronisation-augmented microprotocol approach. In: Proc. IPDPS 2004: the 18th IEEE Int’l Parallel and Distributed Processing Symposium (April 2004)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Paweł T. Wojciechowski
    • 1
  1. 1.Poznań University of TechnologyPoznańPoland

Personalised recommendations