Abstract
We are interested in the class of systems for which the satisfaction of code dependencies is a dynamic process rather than one which is determined purely at load-time. Examples include dynamic delegation, mobile code and agent systems. Such systems exhibit properties which are not well-captured by current typing models. We describe a system of ionic object types which capture these effects and allow them to be analysed within a standard object type framework. We show how ionic types improve the modeling of various forms of dynamic object completion including certain aspects of security checking, delegation and method update, contrast them with other approaches to the same problems, and sketch a possible ionic extension to Java.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Secure computing with Java: now and the future. http://www.javasoft.com/marketing/collateral/security.html, 1998.
Martín Abadi and Luca Cardelli. A theory of objects. Springer Verlag, 1996.
Martín Abadi and Andrew Gordon. Secrecy by typing in security protocols. In Theoretical aspects of computer science, volume 1243, pages 59–73. Springer-Verlag, 1997.
Gilad Bracha and William Cook. Mixin-based inheritance. In Proceedings of OOPSLA/ECOO’90, 1990.
Luca Cardelli, Giorgio Ghelli, and Andrew Gordon. Mobility types for mobile ambients. In Proceedings of the International Conference on Algebraic and Logic Programming, 1999.
Luca Cardelli and Andrew Gordon. Mobile ambients. In Maurice Nivat, editor, Foundations of software science and computational structures, volume 1378. Springer Verlag, 1998.
Luca Cardelli and Andrew Gordon. Types for mobile ambients. In Proceedings of the 26th ACM Symposium on Principles of Programming Languages, pages 79–92, 1999.
Simon Dobson, Paddy Nixon, Vincent Wade, Sotirios Terzis, and John Fuller. Vanilla: an open language framework. In Krzysztof Czarnecki and Ulrich Eisenecker, editors, Generative and component-based software engineering. Springer-Verlag, 1999.
Sophia Drossopoulou, Susan Eisenbach, and Sarfraz Khurshid. Is the Java type system sound? Theory and practice of object systems, 5(1):3–24, 1999.
Matthew Flatt, Shriram Krishnamurthi, and Matthias Felleisen. Classes and mixins. In Proceedings of POPL’98, pages 171–183. ACM Press, 1998.
Eric Jul, Henry Levy, Neil Hutchinson, and Andrew Black. Fine-grained mobility in the Emerald system. ACM Transactions on Computer Systems, 6(1):109–133, 1988.
Neeran Karnik and Anand Tripathi. Design issues in mobile-agent programming. IEEE Concurrency, 6(3), 1998.
Günther Kniesel. Type-safe delegation for run-time component adaptation. In Proceedings of ECOOP’99, pages 351–366. Springer-Verlag, 1999.
Henry Lieberman. Using prototypical objects to implement shared behaviour in object-oriented systems. In Proceedings of OOPSLA’86, 1986.
Ole Lehrmann Madsen, Birger Moller-Pedersen, and Kristen Nygaard. Object-Oriented programming in the BETA programming language. Addison-Wesley, 1993.
Gilles Muller and Ulrik Pagh Schultz. Harissa: a hybrid approach to Java execution. IEEE Software, 16(2):44–51, 1999.
Benjamin Pierce and Davide Sangiorgi. Typing and subtyping for mobile processes. In Logic in Computer Science, 1993.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2000 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Dobson, S., Matthews, B. (2000). Ionic Types. In: Bertino, E. (eds) ECOOP 2000 — Object-Oriented Programming. ECOOP 2000. Lecture Notes in Computer Science, vol 1850. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45102-1_15
Download citation
DOI: https://doi.org/10.1007/3-540-45102-1_15
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-67660-7
Online ISBN: 978-3-540-45102-0
eBook Packages: Springer Book Archive