Skip to main content
Log in

Language design methods based on semantic principles: Algol 68, a Language Designed using Semantic Principles

  • Remarks on R.D. Tennent's
  • Published:
Acta Informatica Aims and scope Submit manuscript

Summary

This note observes that Tennent's proposed language design method is that used by Algol 68's designers and points out how his proposed extensions to Pascal bring it closer to Algol 68. Some implications of his proposal are discussed.

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.

Institutional subscriptions

Similar content being viewed by others

References

  1. Andler, S., Hibbard, P.: Types in Algol 68. Proceedings of the 5th annual III conference, implementation and design of algorithmic languages, pp. 124–144. Paris: IRIA 1977

    Google Scholar 

  2. Berry, D.M., Schwartz, R.L.: Type, equivalence in strongly typed languages: one more look. Sigplan Notices 14:5. 35–41 (1979)

    Google Scholar 

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

    Google Scholar 

  4. Church, A.: The calculi of lambda conversion. Princeton, NJ: Princeton University Press 1941

    Google Scholar 

  5. Cleaveland, J.C., Uzgalis, R.C.: Grammars for programming languages. Amsterdam: North-Holland 1976

    Google Scholar 

  6. Department of Defense: Revised ironman requirements. Sigplan Notices 12:12. 39–54 (1977)

    Google Scholar 

  7. Requirements for hig order computer programming languages, Steelman. Department of Defense, 1978

  8. Evans, A.: PAL — a language for teaching programming linguistics. Proc. 23rd ACM National Conference. Princeton, NJ: Brandin Systems Press 1968

    Google Scholar 

  9. Guttag, J., Horning, J., London, R.: A proof rule for EUCLID procedures. Formal description of programming concepts (E.J. Neuhold, ed.). Amsterdam: North-Holland 1977

    Google Scholar 

  10. Hamlet, R.: Ignorance of Algol 68 considered harmful. Sigplan Notices 12:4, 51–56 (1977)

    Google Scholar 

  11. Hoare, C.A.R.: An axiomatic basis for computer programming. Commun. ACM 12, 576–580. 583 (1969)

    Google Scholar 

  12. Hoare, C.A.R.: Procedures and parameters: an axiomatic approach. Symposium on semantics of algorithmic languages (E. Engeler, ed.). Berlin Heidelberg New York: Springer 1971

    Google Scholar 

  13. Hoare, C.A.R.: Hints on programming language design. ACM symposium on principles of programming languages, Boston. 1973

  14. Hoare, C.A.R., Wirth, N.: An axiomatic definition of the programming language Pascal. Acta Informat. 2, 335–355 (1973)

    Google Scholar 

  15. Jensen, K., Wirth, N.: PASCAL user manual and report. Berlin Heidelberg New York: Springer 1974

    Google Scholar 

  16. Landin, P.J.: The next 700 programming languages. Commun. ACM 9, 157–164 (1966)

    Google Scholar 

  17. Lampson, B., Horning, J., London, R., Mitchell, J., Popek, G.: Report on the programming language EUCLID. Sigplan Notices 12:2. 1–19 (1977)

    Google Scholar 

  18. Lehmann, D.J.: Modes in Algol Y. Proceedings of the 5th annual III conference, implementation and design of algorithmic languages, pp. 111–123. Paris: IRIA 1977

    Google Scholar 

  19. Lindsey, C.H.: Modals. Algol Bulletin 37, 26–29 (1974)

    Google Scholar 

  20. Lindsey. C.H., Boom, H.: A modules and separate compilation facility for Algol 68. Afdeling Informatica IW105/78. Mathematisch Centrum, 1978

  21. Lindsey, C.H., van der Meulen, S.G.: Informal introduction to ALGOL 68. Amsterdam: North-Holland 1977

    Google Scholar 

  22. London R., Proof rules for the programming language EUCLID. Acta Informat. 10, 1–26 (1978)

    Google Scholar 

  23. McGettrick, A.D.: An introduction to the formal definition for Algol 68. Annual Review in Automatic Programming 9, 1–84 (1978)

    Google Scholar 

  24. McGettrick, A.D.: Algol 68 — a first and second course. Cambridge. UK: Cambridge University Press 1978

    Google Scholar 

  25. Pagan, F.: A practical guide to Algol 68. London: Wiley 1976

    Google Scholar 

  26. Quine, W.V.O.: Set theory and its logic. Cambridge, MA: Harvard University Press 1963

    Google Scholar 

  27. Reynolds, J.C.: Gedanken — a simple typeless language based on the principle of completeness and the reference concept. Commun. ACM 13, 308–319 (1970)

    Google Scholar 

  28. Schuman, S.A.: Toward modular programming in high-level languages. MOL Bulletin 4, IFIP WG2.4, 1974

  29. Schwartz, R.L., Berry, D.M.: A semantic view of Algol 68. Journal of Computer Languages 4. 1–15 (1979)

    Google Scholar 

  30. Schwartz, R.L.: An axiomatic semantic definition of Algol 68. Computer Science Department, University of California at Los Angeles. Ph.D. Thesis, UCLA-34-P214-75. August 1978

  31. Schwartz, R.L.: An axiomatic treatment of Algol 68 routines. Proceedings of the international conference of automata, languages and programming. Berlin Heidelberg New York: Springer 1979

    Google Scholar 

  32. Schwartz, R.L.: On axiomatizability as a language design tool. Faculty of Mathematics, Weizmann Institute of Science, Rehovot. Israel, 1979

    Google Scholar 

  33. Stoll, R.R.: Set theory and logic. San Francisco: Freeman 1963

    Google Scholar 

  34. Strachey. C: The varieties of programming language. Oxford University Computing Laboratory. Programming Research Group, Technical Monograph PRG-10, 1973

  35. Taanenbaum, A.S.: A tutorial on Algol 68. Comput. Surveys 8, 4–38 (1976)

    Google Scholar 

  36. Tanenbaum, A.S.: A comparison of Pascal and Algol 68. Comput. J. 21, 316–323 (1978)

    Google Scholar 

  37. Tennent, R.D.: Mathematical semantics and design of programming languages. University of Toronto. Ontario. Canada. Ph. D. Thesis. 1973

    Google Scholar 

  38. Tennent, R.D.: Language design methods based on semantic principles. Acta Informat. 8, 97–112 (1977)

    Google Scholar 

  39. Uzgalis. R.C.: Private communication. 1979

  40. van Wijngaarden, A., (ed.), Peck, J.E.L.. Koster, C.H.A., Mailloux, B.J.: Report on the algorithmic language Algol 68. Numer. Math. 14, 79–218 (1969)

    Google Scholar 

  41. van Wijngaarden, A., Mailloux, B.J., Peck, J.E.L., Koster, C.H.A., Sintzoff, M., Lindsey, C.H., Meertens. L.G.L.T., Fisker, R.G. (eds.): Revised report on the algorithmic language Algol 68. Acta Informat. 5, 1–236 (1975)

  42. Wirth, N.: On the design of programming languages. Proceedings IFIP Congress 74, Amsterdam: North-Holland 1974

    Google Scholar 

  43. Wirth, N.: An assessment of the programming language Pascal. IEEE Trans. Software Engineering 1, 192–198 (1976)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Additional information

On Sabbatical from: Computer Science Department, University of California, Los Angeles, Los Angeles, CA 90024, USA

Rights and permissions

Reprints and permissions

About this article

Cite this article

Berry, D.M. Language design methods based on semantic principles: Algol 68, a Language Designed using Semantic Principles. Acta Informatica 15, 83–98 (1980). https://doi.org/10.1007/BF00269810

Download citation

  • Received:

  • Issue Date:

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

Keywords

Navigation