Skip to main content
Log in

Abstract Models of Storage

  • Published:
Higher-Order and Symbolic Computation

Abstract

This note is a historical survey of Christopher Strachey's influence on the development of semantic models of assignment and storage management in procedural languages.

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. Abramsky, S. and McCusker, G. Linearity, sharing and state: A fully abstract game semantics for IDEALIZED ALGOL with active expressions. In O'Hearn and Tennent [37], pp. 297-329 of Vol. 2.

  2. Abramsky, S. and McCusker, G. Full abstraction for IDEALIZED ALGOL with passive expressions. Theoretical Computer Science 227 (1999) 3-42.

    Google Scholar 

  3. Bainbridge, S., Freyd, P.J., Scedrov, A., and Scott, P.J. Functorial polymorphism. Theoretical Computer Science 70(10) (1990) 35-64; Corrigendum in 71(3) (1990) 431.

    Google Scholar 

  4. Barron, D.W., Buxton, J.N., Hartley, D.F., Nixon, E., and Strachey, C. The main features of CPL. The Computer J. 6 (1963) 134-143.

    Google Scholar 

  5. Bekić, H. and Walk, K. Formalization of storage properties. In Symposium on Semantics of Algorithmic Languages, E. Engeler (Ed.). Springer-Verlag, Berlin, 1971, pp. 28-61. Lecture Notes in Mathematics, Vol. 188. Also, in Programming Languages and their Definition, C.B Jones (Ed.). Springer Verlag, Berlin, 1984, pp. 56-85. Lecture Notes in Computer Science, Vol. 177.

    Google Scholar 

  6. Brookes, S., Main, M., Melton, A., and Mislove, M. (Eds.). Mathematical Foundations of Programming Semantics, Eleventh Annual Conference, Tulane University, New Orleans, Louisiana, March 29-April 1, 1995. Elsevier Science (http://www.elsevier.nl). Electronic Notes in Theoretical Computer Science, Vol. 1.

    Google Scholar 

  7. Burstall, R.M. Some aspects of CPL semantics. Technical Report 3, Experimental Programming Unit, University of Edinburgh, 1965.

  8. Burstall, R.M. Semantics of assignment. In Dale and Michie [11], pp. 3-30.

  9. Burstall, R.M. and Popplestone, R.J. POP-2 reference manual. In Dale and Michie [11], pp. 205-244.

  10. Buxton, J.N., Coulouris, G.F., Hartley, D.F., Nixon, E., Park, D., Richards, M., and Strachey, C. (Eds.). CPL working papers. Technical report, University of London Institute of Computer Science and Cambridge University Mathematical Laboratory, July 1966. Privately circulated.

  11. Dale, E. and Michie, E. (Eds.). Machine Intelligence, Vol. 2. Oliver and Boyd, Edinburgh, and American Elsevier, 1968.

  12. Fiore, M.P., Jung, A., Moggi, E., O'Hearn, P.W., Riecke, J., Rosolini, G., and Stark, I. Domains and denotational semantics: history, accomplishments and open problems. Bulletin of the European Association for Theoretical Computer Science 59 (1996) 227-256. Also available by anonymous FTP as tenyears.ps.Z at ftp.dcs.qmw.ac.uk/pub/lfp/ohearn/.

    Google Scholar 

  13. Floyd, R.W. Assigning meanings to programs. In Mathematical Aspects of Computer Science, J.T. Schwartz (Ed.). Vol. 19 of Proceedings of Symposia in Applied Mathematics, American Mathematical Society, Providence, Rhode Island, 1967, pp. 19-32

  14. Freyd, P., O'Hearn, P.W., Power, A.J., Takeyama, M., Street, R., and Tennent, R.D. Bireflectivity. Theoretical Computer Science 228 (1999) 5-47.

    Google Scholar 

  15. Ghica, D.R. Semantics of dynamic variables in ALGOL-like languages. Master's thesis, Department of Computing and Information Science, Queen's University, Kingston, Canada, 1997.

    Google Scholar 

  16. Gordon, M.J.C. The denotational semantics of sequential machines. Information Processing Letters 10(1) (1980) 1-3.

    Google Scholar 

  17. Gries, D. (Ed.). Programming Methodology, A Collection of Articles by IFIP WG 2.3. Springer-Verlag, New York, 1978.

    Google Scholar 

  18. Halpern, J.Y., Meyer, A.R., and Trakhtenbrot, B.A. The semantics of local storage, or what makes the free-list free? (preliminary report). In Conference Record of the Eleventh Annual ACM Symposium on Principles of Programming Languages, Salt Lake City, Utah, 1984. ACM, New York, pp. 245-257.

  19. Henhapl, W. A storage model derived from axioms. Technical Report TR 25.100, IBM Laboratory, Vienna, 1969.

    Google Scholar 

  20. Hoare, C.A.R. An axiomatic basis for computer programming. Comm. ACM 12(10) (1969) 576-580 and 583.

    Google Scholar 

  21. Lucas, P., Lauer, P., and Stigleitner, H. Method and notation for the formal definition of programming languages. Technical Report TR 25.087, IBM Laboratory, Vienna, 1968.

    Google Scholar 

  22. Lucas, P. and Walk, K. On the formal description of PL/I. Annual Review in Automatic Programming, Vol. 6, Pergammon Press, London, 1969, pp. 105-152.

    Google Scholar 

  23. McCarthy, J. Towards a mathematical science of computation. Information Processing (1962), North Holland, 1963, pp. 21-28.

  24. McCarthy, J. A formal description of a subset of ALGOL. In Steel [64], pp. 1-7.

  25. Meyer, A.R. and Sieber, K. Towards fully abstract semantics for local variables: preliminary report. In Conference Record of the Fifteenth Annual ACM Symposium on Principles of Programming Languages, San Diego, California, 1988. ACM, New York, pp. 191-203. Reprinted as Ch. 7 of [37].

    Google Scholar 

  26. Milne, R.E. The formal semantics of computer languages and their implementations. Ph.D. Thesis, University of Cambridge, and Technical Microfiche TCF-2, Programming Research Group, University of Oxford, 1974.

  27. Milne, R.E. and Strachey, C. A Theory of Programming Language Semantics. Chapman and Hall, London, and Wiley, New York, 1976.

    Google Scholar 

  28. Moggi, E. An abstract view of programming languages. Technical Report ECS-LFCS-90-113, Laboratory for Foundations of Computer Science, Department of Computer Science, University of Edinburgh, 1990.

  29. Morrisett, J.G. Refining first-class stores. In SIPL [62], pp. 73-87.

  30. O'Hearn, P.W. A model for syntactic control of interference. Mathematical Structures in Computer Science 3(4) (1993) 435-465.

    Google Scholar 

  31. O'Hearn, P.W., Power, A.J., Takeyama, M., and Tennent, R.D. Syntactic control of interference revisited. Theoretical Computer Science 228 (1999) 175-210. Preliminary version [6] reprinted as Ch. 18 of [7].

    Google Scholar 

  32. O'Hearn, P.W. and Reynolds, J.C. From ALGOL to polymorphic linear lambda-calculus. To appear in J. ACM. Available by anonymous FTP as AlgolToPolyLin.ps at ftp.dcs.qmw.ac.uk/pub/lfp/ohearn/.

  33. O'Hearn, P.W. and Tennent, R.D. Semantics of local variables. In Applications of Categories in Computer Science M.P. Fourman, P.T. Johnstone, and A.M. Pitts (Eds.). Cambridge University Press, Cambridge, England, 1992, pp. 217-238. London Mathematical Society Lecture Note Series, Vol. 177.

    Google Scholar 

  34. O'Hearn, P.W. and Tennent, R.D. Relational parametricity and local variables. In Conference Record of the Twentieth AnnualACMSIGPLAN-SIGACTSymposium on Principles of Programming Languages, Charleston, South Carolina, 1993. ACM, New York, pp. 171-184.

    Google Scholar 

  35. O'Hearn, P.W. and Tennent, R.D. Semantical analysis of specification logic, 2. Information and Computation 107(1) (1993) 25-57. Reprinted as Ch. 14 of [37].

    Google Scholar 

  36. O'Hearn, P.W. and Tennent, R.D. Parametricity and local variables. J.ACM 42 (3) (1995) 658-709. Preliminary version appeared as [34] Reprinted as Ch. 16 of [37].

    Google Scholar 

  37. O'Hearn, P.W. and Tennent, R.D. (Eds.). ALGOL-like Languages. Progress in Theoretical Computer Science. Birkhäuser, Boston, 1997. Two volumes.

    Google Scholar 

  38. Oles, F.J. A category-theoretic approach to the semantics of programming languages. Ph.D. Thesis, Syracuse University, Syracuse, N.Y., 1982.

    Google Scholar 

  39. Oles, F.J. Type algebras, functor categories and block structure. In Algebraic Methods in Semantics, M. Nivat and J.C. Reynolds (Eds.). Cambridge University Press, Cambridge, England, 1985, pp. 543-573.

    Google Scholar 

  40. Oles, F.J. Functor categories and store shapes. In O'Hearn and Tennent [37], Ch. 11, pp. 3-12 of Vol. 2.

  41. Park, D. Some semantics for data structures. In Machine Intelligence, Vol. 3, D. Michie (Ed.). American Elsevier, New York, 1968, pp. 351-371.

    Google Scholar 

  42. Pitts, A. and Stark, I. Observable properties of higher order functions that dynamically create local names, or: What's new? In Mathematical Foundations of Computer Science, A.M. Borzyszkowski and S. Sokolowski (Eds.). Gdansk, Poland, 1993. Springer-Verlag, Berlin, pp. 122-140. Lecture Notes in Computer Science, Vol. 711.

    Google Scholar 

  43. Plotkin. G. and Abadi, M. A logic for parametric polymorphism. In Typed Lambda Calculi and Applications. M. Bezen and J.F. Groote (Eds.). Utrecht, The Netherlands, March 1993. Springer-Verlag, Berlin, pp. 361-375. Lecture Notes in Computer Science, Vol. 664.

    Google Scholar 

  44. Randall, B. System structure for software fault tolerance. IEEE Transactions in Software Engineering SE-1(2) (1975) 220-232.

    Google Scholar 

  45. Reddy, U. When parametricity implies naturality. Available by anonymous FTP as naturality.ps.Z at cs.uiuc.edu/pub/faculty/reddy/papers/, 1997.

  46. Reddy, U.S. Global state considered unnecessary: Introduction to object-based semantics. LISP and Symbolic Computation 9(1) (1996) 7-76. Reprinted as Ch. 19 of [37].

    Google Scholar 

  47. Reynolds, J.C. GEDANKEN-a simple Typeless language based on the principle of completeness and the reference concept. Comm. ACM 13(5) (1970) 308-319.

    Google Scholar 

  48. Reynolds, J.C. A polymorphic model of ALGOL. Unpublished manuscript, 1975.

  49. Reynolds, J.C. Syntactic control of interference. In Conference Record of the Fifth Annual ACM Symposium on Principles of Programming Languages, Tucson, Arizona, January 1978. ACM, New York, pp. 39-46. Reprinted as Ch. 10 of [37].

    Google Scholar 

  50. Reynolds, J.C. The Craft of Programming. Prentice-Hall International, London, 1981.

    Google Scholar 

  51. Reynolds, J.C. The essence of ALGOL. In Algorithmic Languages, J.W. de Bakker and J.C. van Vliet (Eds.). Proceedings of the International Symposium on Algorithmic Languages, Amsterdam, October 1981. North-Holland, Amsterdam, pp. 345-372. Reprinted as Ch. 3 of [37].

    Google Scholar 

  52. Reynolds, J.C. IDEALIZED ALGOL and its specification logic. In Tools and Notions for Program Construction, D. Néel (Ed.). Nice, France, December 1981. Cambridge University Press, Cambridge, 1982. Reprinted as Ch. 6 of [37].

    Google Scholar 

  53. Reynolds, J.C. Types, abstraction and parametric polymorphism. In Information Processing 83, R.E.A. Mason (Ed.). Paris, France, 1983. North-Holland, Amsterdam, pp. 513-523.

    Google Scholar 

  54. Reynolds, J.C. Syntactic control of interference, part 2. In Automata, Languages and Programming, 16th International Colloquium, G. Ausiello, M. Dezani-Ciancaglini, and S. Ronchi Della Rocca (Eds.). Stresa, Italy, July 1989. Springer-Verlag, Berlin, pp. 704-722. Lecture Notes in Computer Science, Vol. 372.

    Google Scholar 

  55. Scott, D.S. A Type-theoretical alternative to CUCH, ISWIM, OWHY. Privately circulated memo, Oxford University, October 1969. Published in Theoretical Computer Science 121(1/2) (1993) 411-440.

    Google Scholar 

  56. Scott, D.S. Outline of a mathematical theory of computation. In Proceedings of the Fourth Annual Princeton Conference on Information Sciences and Systems, Princeton, 1970. Department of Electrical Engineering, Princeton University, pp. 169-176. Also Technical Monograph PRG-2, Oxford University Computing Laboratory, Programming Research Group, Oxford.

    Google Scholar 

  57. Scott, D.S. Mathematical concepts in programming language semantics. In Proc. 1972 Spring Joint Computer Conference, AFIPS Press, Montvale, N.J., 1972, pp. 225-234.

    Google Scholar 

  58. Scott, D.S. An appreciation of Christopher Strachey and his work. Foreword to J.E. Stoy, Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory. The MIT Press, Cambridge, Massachusetts, and London, England, 1977, pp. xv-xxx.

    Google Scholar 

  59. Scott, D.S. and Strachey, C. Toward a mathematical semantics for computer languages. In Proceedings of the Symposium on Computers and Automata, J. Fox (Ed.). Polytechnic Institute of Brooklyn Press, New York, 1971, pp. 19-46. Microwave Research Institute Symposia Series, Vol. 21. Also Technical Monograph PRG-6, Oxford University Computing Laboratory, Programming Research Group, Oxford.

    Google Scholar 

  60. Sieber, K. New steps towards full abstraction for local variables. In SIPL [62], pp. 88-100.

  61. Sieber, K. Full abstraction for the second order subset of an ALGOL-like language. Mathematical Foundations of Computer Science, Kôsice, Slovakia, August 1994. Springer-Verlag, Berlin, pp. 608-617. Lecture Notes in Computer Science, Vol. 841. Reprinted as Ch. 15 of [37].

    Google Scholar 

  62. ACM SIGPLAN Workshop on State in Programming Languages. Copenhagen, Denmark, June 12, 1993. Technical Report RR-968, Department of Computer Science, Yale University.

  63. Stark, I. Categorical models for local names. LISP and Symbolic Computation 9(1) (1996) 77-107.

    Google Scholar 

  64. Steel, T.B., Jr. (Ed.). Formal Language Description Languages for Computer Programming, Proceedings of the IFIP Working Conference, Baden bei Wien, Austria, September 1964. North-Holland, Amsterdam 1966.

    Google Scholar 

  65. Strachey, C. CPL Reference Manual (Incomplete Draft). In [10].

  66. Strachey, C. Fundamental concepts in programming languages. Unpublished lecture notes, International Summer School in Computer Programming, Copenhagen, August 1967. Reprinted in this volume.

    Google Scholar 

  67. Strachey, C. Towards a formal semantics. In Steel [64], pp. 198-220.

  68. Strachey, C. The varieties of programming language. In Proceedings of the International Computing Symposium, Venice, April 1972. Cini Foundation, Venice, pp. 222-233.

    Google Scholar 

  69. Strachey, C. The varieties of programming language. Technical monograph PRG-10, Oxford University Computing Laboratory, Programming Research Group, Oxford, March 1973. Revised and slightly expanded version of [68]. Reprinted as Ch. 2 of [37].

    Google Scholar 

  70. Tennent, R.D. Semantics of interference control. Theoretical Computer Science 27 (1983) 297-310.

    Google Scholar 

  71. Tennent, R.D. Semantical analysis of specification logic. Information and Computation 85(2) (1990) 135-162. Reprinted as Ch. 13 of [37].

    Google Scholar 

  72. van, Wijngaarden, A., Mailloux, B.J., Peck, J.E.L., and Koster, C.H.A. (Ed.) Report on the algorithmic language ALGOL 68. Numerische Mathematik 14 (1969) 79-218.

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Tennent, R.D., Ghica, D.R. Abstract Models of Storage. Higher-Order and Symbolic Computation 13, 119–129 (2000). https://doi.org/10.1023/A:1010022312623

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1010022312623

Navigation