Abstract
The crucial characteristic of object-oriented databases is the concept of object identity which allows the direct representation of various kinds of dependencies between objects, for example, sharing and cyclicity. For object stores to become a viable technology for large shared databases, a certain degree of spatial control over object dependencies (or object locality) seems to be essential. This paper exploits the power of a static type system to capture and evaluate locality information on objects. First, we represent objects by references to complex expressions in a functional language. To control the locality of objects, the space of references is partitioned into a set of subspaces with an explicit reachability constraint. Next, we define a type system where the locality of an object is part of its static type specification and the predefined reachability constraint is enforced via a static typing discipline. We conclude by highlighting the impact of locality information on the operational support to be expected by next generation database systems.
This work was supported in part by the European Commission unter ESPRIT BRA contract # 4092 (FIDE).
Most of the work presented here was carried out during the second author's visit to the University of Glasgow supported by a British Royal Society Research Fellowship.
Preview
Unable to display preview. Download preview PDF.
References
M.P. Atkinson, P.J. Bailey, K.J. Chisholm, W.P. Cockshott, and R. Morrison. An approach to persistent programming. Computer Journal, 26(4), November 1983.
M.P. Atkinson, P. Buneman, and R. Morrison, editors. Data Types and Persistence. Topics in Information Systems. Springer-Verlag, 1988.
M.P. Atkinson, K.J. Chisholm, and W.P. Cockshott. PS-Algol: An algol with a persistent heap. ACM SIGPLAN Notices, 17(7), July 1981.
L. Cardelli. Types for data-oriented languages. In Advances in Database Technology, EDBT '88, volume 303 of Lecture Notes in Computer Science, pages 1–15. Springer-Verlag, 1988.
M.J. Carey and D.J. DeWitt. An overview of the EXODUS project. Database Engineering, Special Issue on Extensible Database Systems, 10(2), June 1987.
M. Carey, D. DeWitt, J. Richardson, and E. Sheikta. Object and file management in the EXODUS extensible database system. In Proc. of the 12th VLDB Conference, Kyoto, Japan, August 1986.
M. Coppo. A ccompleteness theorem for recursively defined types. In G. Goos and J. Hartmanis, editors, Automata, Languages and Programming, 12th Colloquium, volume 194 of Lecture Notes in Computer Science, pages 120–129. Springer, July 1985.
B. Courcelle. Fundamental properties of infinite trees. Theoretical Computer Science, 25:95–169, 1983.
L. Damas and R. Milner. Principal type-schemes for functional programs. In Proc. 9th ACM Symposium on Principles of Programming Languages, pages 207–212, 1982.
L.M. Haas, J.C. Freytag, G.M. Lohmann, and H. Pirahesh. Extensible query processing in Starburst. In ACM-SIGMOD International Conference on Management of Data, pages 377–388, Portland, Oregon, 1989.
R. Harper, R. Milner, and M. Tofte. The definition of Standard ML. LFCS Report Series ECS-LFCS-88-62, Department of Computer Science, University of Edinburgh, August 1988.
S. Khoshafian and G. Copeland. Object identity. In Proc. of 1st Int. Conf. on OOPSLA, Portland, Oregon, October 1986.
D.B. MacQueen. Using dependent types to express modular structure. In Conf. Record 13th Ann. Symp. Principles of Programming Languages, pages 277–26. ACM, January 1986.
D. MacQueen. References and weak polymorphism. Note in Standard ML of New Jersey Distribution Package, 1988.
R. Morrison, A.L. Brown, R. Connor, and A. Dearle. The Napier88 reference manual. PPRR 77–89, Universities of Glasgow and St Andrews, 1989.
J.C. Mitchell and R. Harper. The essence of ML. In Proc. 15th ACM Symposium on Principles of Programming Languages, pages 28–46, San Diego, Ca., January 1988.
R. Milner. A theory of type polymorphism in programming. Journal of Computer and System Sciences, 17:348–375, 1978.
J.E.B. Moss. Addressing large distributed collections of persistent objects: The Mneme project's approach. In Proc. of the 2nd Workshop on Database Programming Languages, Portland, Oregon, pages 358–374, June 1989.
F. Matthes and J.W. Schmidt. The type system of DBPL. In Proc. of the 2nd Workshop on Database Programming Languages, Salishan Lodge, Oregon, pages 255–260, June 1989.
A. Ohori and P. Buneman. Type inference in a database programming language. In ACM Conference on Lisp and Functional Programming, pages 174–183, Snowbird, Utah, 1988.
A. Ohori, P. Buneman, and V. Breazu-Tannen. Database programming in Machiavelli — a polymorphic language with static type inference. In ACMSIGMOD International Conference on Management of Data, pages 46–57, Portland, Oregon, 1989.
A. Ohori. Representing object identity in a pure functional language. In Proc. 3rd Int. Conf. on Database Theory, Paris, France, 1990.
A. Ohori, F. Matthes, and J.W. Schmidt. A static type system for object locality control. (In preparation), 1990.
D. Rémy. Typechecking records and variants in a natural extension of ML. In D. MacQueen, editor, ACM Conf. on Principles of Programming Languages, 1989.
J.W. Schmidt. Some high level language constructs for data of type relation. ACM Transactions on Database Systems, 2(3), September 1977.
J.W. Schmidt, H. Eckhardt, and F. Matthes. DBPL Report. DBPL-Memo 111-88, Fachbereich Informatik, Johann Wolfgang Goethe-Universität, Frankfurt, West Germany, 1988.
M. Tofte. Operational Semantics and Polymorphic Type Inference. PhD thesis, Department of Computer Science, University of Edinburgh, 1988.
M. Wand. A types-as-sets semantics for Milner-style polymorphism. In Proc. 11th ACM Symp. on Principles of Programming Languages, pages 158–164, January 1984.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1991 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Matthes, F., Ohori, A., Schmidt, J.W. (1991). Typing schemes for objects with locality. In: Schmidt, J.W., Stogny, A.A. (eds) Next Generation Information System Technology. EWDW 1990. Lecture Notes in Computer Science, vol 504. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-54141-1_7
Download citation
DOI: https://doi.org/10.1007/3-540-54141-1_7
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-54141-7
Online ISBN: 978-3-540-47444-9
eBook Packages: Springer Book Archive