Skip to main content
Log in

Relational level data structures for programming languages

  • Published:
Acta Informatica Aims and scope Submit manuscript

Summary

We describe a high level of data structure description for programming languages which we call the relational level. At this level one may describe and manipulate data structures without having to decide beforehand which access paths will be used or how the structure may change. This is done by using rather simple mathematical structures and providing powerful primitive operations in the language for manipulating these structures. This is constrast ed with the access path and machine levels of description and it is suggested that a language be able to function well at all three levels. We present some ideas on how a system might be built to implement such a language efficiently. This involves the use of an implementation facility to allow the programmer to specify the implementation of his relational level structures in terms of access path and machine level structures using a “structured programming” approach.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Earley, J.: Toward an understanding of data structures. Comm. ACM 14, 617–626 (1971)

    Google Scholar 

  2. Earley, J., Caizergues, P.: VERS Manual. Computer Science Department, University of California, Berkeley (Cal.) 1971

    Google Scholar 

  3. Codd, E. F.: A relational model of data for large shared data banks. Comm. ACM 13, 377–387 (1970)

    Google Scholar 

  4. Childs, D. L.: Description of a set-theoretic data structure. Proc. AFIPS 1968 FJCC 33, 377–387 (1968)

    Google Scholar 

  5. McCuskey, W. A.: On automatic design of data organization. Proc. AFIPS 1970 FJCC 37, 187–199 (1970)

    Google Scholar 

  6. Randall, L. S.: A relational model of data for the determination of optimum computer storage structures. University of Michigan, Systems Engineering Lab., Report No. 54, 1971

  7. Fillat, A. I., Kraning, L. A.: Generalized organization of large data bases; a set theoretic approach to relations, MIT, Cambridge (Mass.), Project MAC, MAC-TR-70, 1970

    Google Scholar 

  8. Codd, E. F.: A data base sublanguage founded on the relational calculus. IBM Research Lab., San Jose (Cal.), RJ 893, 1971

    Google Scholar 

  9. Feldman, J. A., Rovner, P. D.: An Algol-based associative language. Comm. ACM 12, 439–449 (1969)

    Google Scholar 

  10. Schwartz, J. T.: Abstract algorithms and a set theoretic language for their expression. Computer Science Department, New York University, 1970–71

  11. Knuth, D. E.: The art of computer programming, vol. I. Reading (Mass.): Addison-Wesley 1968 p. 258.

    Google Scholar 

  12. Griswold, R. E., Poage, J. F., Polonsky, J. P.: The SNOBOL4 programming language. Englewood Cliffs (N. J.): Prentice-Hall 1968

    Google Scholar 

  13. Earley, J., Caizergues, P.: A method for incrementally compiling languages with nested statement structure. Comm. ACM 15, 1040–1044 (1972)

    Google Scholar 

  14. Branquart, P., Lewi, J., Sintzoff, M., Wodon, P. L.: The composition of semantics in Algol 68. Comm. ACM 14, 697–708 (1971)

    Google Scholar 

  15. Ash, W., Sibley, E. H.: TRAMP, an interpretive associative processor with deductive capabilities. Proc. Nat. ACM Conf. 143–156 (1968)

  16. Derksen, J., Rulifson, J. F., Waldinger, R. J.: The QA4 language applied to robot planning. Stanford Research Institute, Stanford (Cal.), 1972

    Google Scholar 

  17. Hewitt, C.: Description and theoretical analysis of Planner. MIT, Cambridge (Mass.), Project MAC, AI-TR-258, 1972

    Google Scholar 

  18. Wegbreit, B.: The treatment of data types in EL1. Harvard University, Cambridge (Mass.) 1971

    Google Scholar 

  19. Balzer, R.: Automatic programming. USC Information Sciences Institute, 1972

  20. Wells, M. B., Morris, J. B.: The unified data structure capability in Madcap VI. Internatl. J. Computer and Information Sciences 1, 193–208 (1972)

    Google Scholar 

  21. Dijkstra, E. W.: Structured programming. In: Software Engineering Techniques. NATO Scientific Affairs Division, Brussels 1970

    Google Scholar 

  22. Wegbreit, B.: ECL Programmer's Manual. Harvard University, Cambridge (Mass.), 1972

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Additional information

Research was supported under National Science Foundation Grant No. GJ-34342X.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Earley, J. Relational level data structures for programming languages. Acta Informatica 2, 293–309 (1973). https://doi.org/10.1007/BF00289502

Download citation

  • Received:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF00289502

Keywords

Navigation