Skip to main content

Programing languages for reliable computing systems

  • IV. Special Language Considerations And Formal Tools
  • Chapter
  • First Online:
Program Construction

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 69))

  • 258 Accesses

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

Access this chapter

eBook
USD 16.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 69.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  • Anderson, T., and R. Kerr [1976]. “Recovery blocks in action.” In Proc. 2nd International Conference on Software Engineering, San Francisco, pp. 447–457.

    Google Scholar 

  • Backus, J. W., R. J. Beeber, S. Best, R. Goldberg, L. M. Haibt, H. L. Herrick, R. A. Nelson, D. Sayre, P. B. Sheridan, H. Stern, I. Ziller, R. A. Hughes, and R. Nutt [1957]. “The FORTRAN automatic coding system.” In Proc. Western Joint Computer Conference, Los Angeles.

    Google Scholar 

  • Baker, F. T. [1972]. “Chief programmer team management of production programming.” IBM Syst. J. 11, no. 1, pp. 56–73.

    Article  Google Scholar 

  • — [1975]. “Structured programming in a production programming environment.” IEEE Trans. Software Engineering SE-1, no. 2, pp. 241–252.

    Article  Google Scholar 

  • Boehm, B. W. [1973]. “Software and its impact: A quantitative assessment.” Datamation 19, no. 5, pp. 48–59.

    Google Scholar 

  • —, R. K. McClean, and D. B. Urfrig [1975]. “Some experience with automated aids to the design of large-scale reliable software.” IEEE Trans. Software Engineering SE-1, no. 1, pp. 125–133.

    Article  Google Scholar 

  • —, J. R. Brown, and M. Lipow [1976]. “Quantitative evaluation of software quality.” In Proc. 2nd International Conference on Software Engineering, San Francisco, pp. 592–605.

    Google Scholar 

  • Bridge, R. F. and E. W. Thompson [1976]. “Bridges—A tool for increasing the reliability of references to FORTRAN variables.” SIGPLAN Notices 11, no. 9, pp. 2–9.

    Article  Google Scholar 

  • CACM [1977]. Special issue on language design for reliable software. Comm. ACM 20, no. 8, pp. 539–595.

    Google Scholar 

  • Clark, B. L. and J. J. Horning [1973]. “Reflections on a language designed to write an operating system.” SIGPLAN Notices 8, no. 9, pp. 52–56.

    Article  Google Scholar 

  • Culpepper, L. M. [1975]. “A system for reliable engineering software.” SIGPLAN Notices 10, no. 6, pp. 186–192.

    Article  Google Scholar 

  • Dahl, O.-J., E. W. Dijkstra, and C. A. R. Hoare [1972]. Structured Programming. Academic Press, London and New York.

    MATH  Google Scholar 

  • Dijkstra, E. W. [1968]. “Go to statement considered harmful.” Comm. ACM 11, no. 3, pp. 147–148.

    Article  MathSciNet  Google Scholar 

  • — [1975]. “Correctness concerns and, among other things, why they are resented.” SIGPLAN Notices 10, no. 6, pp. 546–550.

    Article  MATH  Google Scholar 

  • — [1976]. A Discipline of Programming. Prentice-Hall, Englewood Cliffs.

    MATH  Google Scholar 

  • Floyd, R. W. [1967]. “Assigning meanings to programs.” In Mathematical Aspects of Computer Science, ed. J. T. Schwartz, American Mathematical Society, Providence.

    Google Scholar 

  • Fosdick, Loyd D., and Leon J. Osterweil [1976]. “The detection of anomalous interprocedural data flow.” In Proc. 2nd International Conference on Software Engineering, San Francisco, pp. 624–628.

    Google Scholar 

  • Gannon, John D. [1975]. “Language design to enhance programming reliability.” Technical Report CSRG-47, University of Toronto Computer Systems Research Group. [Summarized in John D. Gannon and J. J. Horning, “Language design for programming reliability.” IEEE Trans. Software Engineering SE-1, no. 2, pp. 179–191.]

    Article  Google Scholar 

  • — [1977]. “An experimental evaluation of data type conventions.” Comm. ACM 20, no. 8, pp. 584–595.

    Article  MATH  Google Scholar 

  • Goodenough, J. B. [1975]. “Exception handling: Issues and a proposed notation.” Comm. ACM 18, no. 12, pp. 683–696.

    Article  MathSciNet  MATH  Google Scholar 

  • Gordon, Harvey [1975]. “Paragraphing computer programs.” M. Sc. Thesis, University of Toronto Computer Science Department.

    Google Scholar 

  • Gould, J. D. [1973]. “Some psychological evidence on how people debug computer programs.” Report RC 4542, IBM Watson Research Center, Yorktown Heights.

    Google Scholar 

  • — and P. Drongowski [1972]. “A controlled psychological study of computer program debugging.” Report RC 4083, IBM Watson Research Center, Yorktown Heights.

    Google Scholar 

  • Gries, D. [1974]. “On structured programming—A reply to Smoliar.” Comm. ACM 17, no. 11, pp. 655–657.

    Article  Google Scholar 

  • Hoare, C. A. R. [1969]. “An axiomatic basis for computer programming.” Comm. ACM 12, no. 10, pp. 576–583.

    Article  MATH  Google Scholar 

  • — [1970]. “The use of high level languages in large program construction.” In Efficient Production of Large Programs, ed. B. Osuchowska, pp. 81–107, Computation Centre of the Polish Academy of Sciences, Warsawa.

    Google Scholar 

  • — [1972]. “Proofs of correctness of data representation.” Acta Informatica 1, pp. 271–281.

    Article  MATH  Google Scholar 

  • —[1973]. “Hints on programming language design.” Technical Report STAN-CS-73-403, Stanford University Computer Science Department.

    Google Scholar 

  • — [1975]. “Recursive data structures.” Int. J. Comp. Inf. Sci. 4, p. 105.

    Article  MATH  Google Scholar 

  • — and Wirth [1973]. “An axiomatic definition of the programming language Pascal.” Acta Informatica 2, pp. 335–355.

    Article  MATH  Google Scholar 

  • Holt, R. C., D. B. Wortman, D. T. Barnard, and J. R. Cordy [1977]. “SP/k: A system for teaching computer programming.” Comm. ACM 20, no. 5, pp. 301–309.

    Article  Google Scholar 

  • Horning, J. J., H. C. Lauer, P. M. Melliar-Smith, and B. Randell [1974]. “A program structure for error detection and recovery.” In Operating Systems, ed. E. Gelenbe and C. Kaiser, pp. 171–187, Springer-Verlag Lecture Notes in Computer Science 16, Berlin.

    Chapter  Google Scholar 

  • Horning, J. J., and D. B. Wortman [1977]. “Software Hut: A computer program engineering project in the form of a game.” IEEE Trans. Software Engineering SE-3, no. 4, pp. 325–330.

    Article  Google Scholar 

  • Ichbiah, J. D., and J. P. Rissen [1971]. “Directions de travail pour un atelier de software.” Preliminary Report, Compagnie Internationale Pour L'Informatique, Paris.

    Google Scholar 

  • ICRS [1975]. “Proceedings—1975 International Conference on Reliable Software.” SIGPLAN Notices 10, no. 6.

    Google Scholar 

  • Jones, Anita K., and Barbara H. Liskov [1976]. “A language extension for controlling access to shared data.” IEEE Trans. Software Engineering SE-2, no. 4, pp. 277–284.

    Article  Google Scholar 

  • Karr, Michael, and David B. Loveman III [1978]. “Incorporation of units into programming languages.” Comm. ACM 21, no. 5, pp. 385–391.

    Article  Google Scholar 

  • Kernighan, Brian W., and P. J. Plauger [1974]. The Elements of Programming Style. McGraw-Hill, New York.

    MATH  Google Scholar 

  • — [1976]. Software Tools. Addison-Wesley, Reading.

    Book  MATH  Google Scholar 

  • Knuth, D. E. [1974]. “Structured programming with go to statements.” Comp. Surveys 6, no. 4, pp. 261–301.

    Article  MATH  Google Scholar 

  • Lampson, B. W., J. J. Horning, R. L. London, J. G. Mitchell, and G. J. Popek [1977]. “Report on the programming language Euclid.” SIGPLAN Notices 12, no. 2.

    Google Scholar 

  • Levin, Roy [1977]. “Program structures for exceptional condition handling.” Ph. D. Thesis, Carnegie-Mellon University Department of Computer Science.

    Google Scholar 

  • Liskov, Barbara, Alan Snyder, Russell Atkinson, and Craig Scheffert [1977]. “Abstraction mechanisms in CLU.” Comm. ACM 20, no. 8, pp. 564–576.

    Article  MATH  Google Scholar 

  • London, R. L. [1975]. “A view of program verification.” SIGPLAN Notices 10, no. 6, pp. 534–545.

    Article  Google Scholar 

  • —, Mary Shaw, and Wm. A. Wulf [1976]. “Abstraction and verification in Alphard: A symbol table example.” Technical Report, Carnegie-Mellon University Department of Computer Science and University of Southern California Information Sciences Institute.

    Google Scholar 

  • —, J. V. Guttag, J. J. Horning, B. W. Lampson, J. G. Mitchell, and G. J. Popek [1978]. “Proof rules for the programming language Euclid.” Acta Informatica 10, pp. 1–26.

    Article  MATH  Google Scholar 

  • Love, Tom [1977]. “An experimental investigation of the effect of program structure on program understanding.” SIGPLAN Notices 12, no. 3, pp. 105–113.

    Article  Google Scholar 

  • McCarthy, J. [1962]. “Towards a mathematical theory of computation.” In Proc. IFIP Congress 62. pp. 21–28, North-Holland, Amsterdam.

    Google Scholar 

  • McKeeman, W. M. [1975]. “On preventing programming languages from interfering with programming.” IEEE Trans. Software Engineering SE-1, no. 1, pp. 19–26.

    Article  MATH  Google Scholar 

  • —, J. J. Horning, and D. B. Wortman [1970]. A Compiler Generator. Prentice-Hall, Englewood Cliffs.

    Google Scholar 

  • MacLaren, M. Donald [1977]. “Exception handling in PL/I.” SIGPLAN Notices 12, no. 3, pp. 101–104.

    Article  Google Scholar 

  • Miller, L. A. [1973]. “Normative procedure specification.” In Proc. 81st Ann. Conv. Am. Psychological Assn., Montreal.

    Google Scholar 

  • — [1974]. “Programming by non-programmers.” Int. J. Man-Machine Studies 6, no. 2, pp. 237–260.

    Article  Google Scholar 

  • Mitchell, James G., William Maybury, and Richard Sweet [1978]. “Mesa language manual.” Technical Report CSL-78-1, Xerox Palo Alto Research Center.

    Google Scholar 

  • MOHLL [1975]. Machine Oriented Higher Level Languages. ed. W. L. van der Poel and L. A. Maarssen, North-Holland, Amsterdam.

    Google Scholar 

  • Morgan, H. L. [1970]. “Spelling correction in system programs.” Comm. ACM 13, no. 2, pp. 90–94.

    Article  MATH  Google Scholar 

  • Parnas, D. L. [1971]. “Information distribution aspects of design methodology.” In Proc. IFIP Congress 71. pp. 339–344, North-Holland, Amsterdam.

    Google Scholar 

  • Pratt, Terrence W. [1975]. Programming Languages: Design and Implementation. Prentice-Hall, Englewood Cliffs.

    MATH  Google Scholar 

  • Randell, B. [1975]. “System structure for software fault tolerance.” SIGPLAN Notices 10, no. 6, pp. 437–449.

    Article  Google Scholar 

  • —, and P. M. Melliar-Smith [1977]. “Software reliability: The role of programmed exception handling.” SIGPLAN Notices 12, no. 3, pp. 95–100.

    Article  Google Scholar 

  • Satterthwaite, E. [1972]. “Debugging tools for high-level languages.” Software—Practice and Experience 2, pp. 197–217.

    Article  MATH  Google Scholar 

  • Sharp [1977]. “Small Euclid transliterator.” Technical Report, I. P. Sharp Associates Special Systems Division, Toronto.

    Google Scholar 

  • Shaw, Mary [1976]. “Abstraction and verification in Alphard: Design and verification of a tree handler.” In Proc. Fifth Texas Conf. Computing Systems. pp. 86–94.

    Google Scholar 

  • —, Wm. A. Wulf, and Ralph L. London [1976]. “Abstraction and verification in Alphard: Iteration and generators.” Technical Report, Carnegie-Mellon University Department of Computer Science and University of Southern California Information Sciences Institute.

    Google Scholar 

  • — —, and — [1977]. “Abstraction and verification in Alphard: Defining and specifying iteration and generators.” Comm. ACM 20, no. 8, pp. 553–564.

    Article  MATH  Google Scholar 

  • Shneidermann, B. [1974]. “Two experiments in programming behavior.” Technical Report 17, Indiana University Computer Science Department.

    Google Scholar 

  • —[1977]. Special issue on language design for reliable software. SIGPLAN Notices 12, no. 3.

    Google Scholar 

  • Sime, M. E., T. R. Green, and D. J. Guest [1973]. “Psychological evaluation of two conditional constructions used in computer languages.” Int. J. Man-Machine Studies 5, no. 1, pp. 105–113.

    Article  Google Scholar 

  • Strachey, C. [1973]. Lecture given at IBM Scientific Center, Peterlee, England.

    Google Scholar 

  • Teitelman, W. [1972]. “Do what I mean: The programmer's assistant.” Computers and Automation 21, pp. 8–11.

    Google Scholar 

  • Turski, W. M. [1978]. Computer Programming Methodology. Heyden, London.

    Book  MATH  Google Scholar 

  • Weinberg, Gerald M. [1971]. The Psychology of Computer Programming. Van Nostrand Reinhold, New York.

    Google Scholar 

  • —[1973]. “The psychology of improved programming performance.” Datamation 18, no. 11.

    Google Scholar 

  • Weissman, Laurence M. [1974]. “A methodology for studying the psychological complexity of computer programs.” Technical Report CSRG-37, University of Toronto Computer Systems Research Group.

    Google Scholar 

  • Wirth, N. [1971a]. “The programming language Pascal.” Acta Informatica 1, pp. 35–63.

    Article  MATH  Google Scholar 

  • — [1971b]. “Program development by stepwise refinement.” Comm. ACM 14, no. 4, pp. 221–227.

    Article  MATH  Google Scholar 

  • — [1974a]. “On the design of programming languages.” In Proc. IFIP Congress 74. pp. 386–393, North-Holland, Amsterdam.

    Google Scholar 

  • — [1974b]. “On the composition of well-structured programs.” Comp. Surveys 6, no. 4, pp. 247–259.

    Article  MATH  Google Scholar 

  • Wulf, W., and Mary Shaw [1973]. “Global variable considered harmful.” SIGPLAN Notices 8, no. 2, pp. 28–34.

    Article  Google Scholar 

  • Wulf, Wm. A., Ralph L. London, and Mary Shaw [1976a]. “Abstraction and verification in Alphard: Introduction to language and methodology.” Technical Report, Carnegie-Mellon University Department of Computer Science and University of Southern California Information Sciences Institute.

    Google Scholar 

  • — — and — [1976b]. “An introduction to the construction and verification of Alphard programs.” IEEE Trans. Software Engineering SE-2, no. 4, pp. 253–265.

    Article  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Friedrich L. Bauer Manfred Broy E. W. Dijkstra S. L. Gerhart D. Gries M. Griffiths J. V. Guttag J. J. Horning S. S. Owicki C. Pair H. Partsch P. Pepper M. Wirsing H. Wössner

Rights and permissions

Reprints and permissions

Copyright information

© 1979 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Horning, J.J. (1979). Programing languages for reliable computing systems. In: Bauer, F.L., et al. Program Construction. Lecture Notes in Computer Science, vol 69. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0014680

Download citation

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

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-09251-3

  • Online ISBN: 978-3-540-35312-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics