Advertisement

Programing languages for reliable computing systems

  • J. J. Horning
IV. Special Language Considerations And Formal Tools
Part of the Lecture Notes in Computer Science book series (LNCS, volume 69)

Keywords

Programming Language Error Detection Acceptance Test Reliable Software Language Design 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 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
  2. 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
  3. Baker, F. T. [1972]. “Chief programmer team management of production programming.” IBM Syst. J. 11, no. 1, pp. 56–73.Google Scholar
  4. — [1975]. “Structured programming in a production programming environment.” IEEE Trans. Software Engineering SE-1, no. 2, pp. 241–252.Google Scholar
  5. Boehm, B. W. [1973]. “Software and its impact: A quantitative assessment.” Datamation 19, no. 5, pp. 48–59.Google Scholar
  6. —, 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.Google Scholar
  7. —, 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
  8. 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.Google Scholar
  9. CACM [1977]. Special issue on language design for reliable software. Comm. ACM 20, no. 8, pp. 539–595.Google Scholar
  10. 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.Google Scholar
  11. Culpepper, L. M. [1975]. “A system for reliable engineering software.” SIGPLAN Notices 10, no. 6, pp. 186–192.Google Scholar
  12. Dahl, O.-J., E. W. Dijkstra, and C. A. R. Hoare [1972]. Structured Programming. Academic Press, London and New York.Google Scholar
  13. Dijkstra, E. W. [1968]. “Go to statement considered harmful.” Comm. ACM 11, no. 3, pp. 147–148.Google Scholar
  14. — [1975]. “Correctness concerns and, among other things, why they are resented.” SIGPLAN Notices 10, no. 6, pp. 546–550.Google Scholar
  15. — [1976]. A Discipline of Programming. Prentice-Hall, Englewood Cliffs.Google Scholar
  16. Floyd, R. W. [1967]. “Assigning meanings to programs.” In Mathematical Aspects of Computer Science, ed. J. T. Schwartz, American Mathematical Society, Providence.Google Scholar
  17. 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
  18. 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.]Google Scholar
  19. — [1977]. “An experimental evaluation of data type conventions.” Comm. ACM 20, no. 8, pp. 584–595.Google Scholar
  20. Goodenough, J. B. [1975]. “Exception handling: Issues and a proposed notation.” Comm. ACM 18, no. 12, pp. 683–696.Google Scholar
  21. Gordon, Harvey [1975]. “Paragraphing computer programs.” M. Sc. Thesis, University of Toronto Computer Science Department.Google Scholar
  22. Gould, J. D. [1973]. “Some psychological evidence on how people debug computer programs.” Report RC 4542, IBM Watson Research Center, Yorktown Heights.Google Scholar
  23. — and P. Drongowski [1972]. “A controlled psychological study of computer program debugging.” Report RC 4083, IBM Watson Research Center, Yorktown Heights.Google Scholar
  24. Gries, D. [1974]. “On structured programming—A reply to Smoliar.” Comm. ACM 17, no. 11, pp. 655–657.Google Scholar
  25. Hoare, C. A. R. [1969]. “An axiomatic basis for computer programming.” Comm. ACM 12, no. 10, pp. 576–583.Google Scholar
  26. — [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
  27. — [1972]. “Proofs of correctness of data representation.” Acta Informatica 1, pp. 271–281.Google Scholar
  28. —[1973]. “Hints on programming language design.” Technical Report STAN-CS-73-403, Stanford University Computer Science Department.Google Scholar
  29. — [1975]. “Recursive data structures.” Int. J. Comp. Inf. Sci. 4, p. 105.Google Scholar
  30. — and Wirth [1973]. “An axiomatic definition of the programming language Pascal.” Acta Informatica 2, pp. 335–355.Google Scholar
  31. 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.Google Scholar
  32. 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.Google Scholar
  33. 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.Google Scholar
  34. 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
  35. ICRS [1975]. “Proceedings—1975 International Conference on Reliable Software.” SIGPLAN Notices 10, no. 6.Google Scholar
  36. 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.Google Scholar
  37. Karr, Michael, and David B. Loveman III [1978]. “Incorporation of units into programming languages.” Comm. ACM 21, no. 5, pp. 385–391.Google Scholar
  38. Kernighan, Brian W., and P. J. Plauger [1974]. The Elements of Programming Style. McGraw-Hill, New York.Google Scholar
  39. — [1976]. Software Tools. Addison-Wesley, Reading.Google Scholar
  40. Knuth, D. E. [1974]. “Structured programming with go to statements.” Comp. Surveys 6, no. 4, pp. 261–301.Google Scholar
  41. 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
  42. Levin, Roy [1977]. “Program structures for exceptional condition handling.” Ph. D. Thesis, Carnegie-Mellon University Department of Computer Science.Google Scholar
  43. Liskov, Barbara, Alan Snyder, Russell Atkinson, and Craig Scheffert [1977]. “Abstraction mechanisms in CLU.” Comm. ACM 20, no. 8, pp. 564–576.Google Scholar
  44. London, R. L. [1975]. “A view of program verification.” SIGPLAN Notices 10, no. 6, pp. 534–545.Google Scholar
  45. —, 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
  46. —, 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.Google Scholar
  47. Love, Tom [1977]. “An experimental investigation of the effect of program structure on program understanding.” SIGPLAN Notices 12, no. 3, pp. 105–113.Google Scholar
  48. McCarthy, J. [1962]. “Towards a mathematical theory of computation.” In Proc. IFIP Congress 62. pp. 21–28, North-Holland, Amsterdam.Google Scholar
  49. McKeeman, W. M. [1975]. “On preventing programming languages from interfering with programming.” IEEE Trans. Software Engineering SE-1, no. 1, pp. 19–26.Google Scholar
  50. —, J. J. Horning, and D. B. Wortman [1970]. A Compiler Generator. Prentice-Hall, Englewood Cliffs.Google Scholar
  51. MacLaren, M. Donald [1977]. “Exception handling in PL/I.” SIGPLAN Notices 12, no. 3, pp. 101–104.Google Scholar
  52. Miller, L. A. [1973]. “Normative procedure specification.” In Proc. 81st Ann. Conv. Am. Psychological Assn., Montreal.Google Scholar
  53. — [1974]. “Programming by non-programmers.” Int. J. Man-Machine Studies 6, no. 2, pp. 237–260.Google Scholar
  54. Mitchell, James G., William Maybury, and Richard Sweet [1978]. “Mesa language manual.” Technical Report CSL-78-1, Xerox Palo Alto Research Center.Google Scholar
  55. MOHLL [1975]. Machine Oriented Higher Level Languages. ed. W. L. van der Poel and L. A. Maarssen, North-Holland, Amsterdam.Google Scholar
  56. Morgan, H. L. [1970]. “Spelling correction in system programs.” Comm. ACM 13, no. 2, pp. 90–94.Google Scholar
  57. Parnas, D. L. [1971]. “Information distribution aspects of design methodology.” In Proc. IFIP Congress 71. pp. 339–344, North-Holland, Amsterdam.Google Scholar
  58. Pratt, Terrence W. [1975]. Programming Languages: Design and Implementation. Prentice-Hall, Englewood Cliffs.Google Scholar
  59. Randell, B. [1975]. “System structure for software fault tolerance.” SIGPLAN Notices 10, no. 6, pp. 437–449.Google Scholar
  60. —, and P. M. Melliar-Smith [1977]. “Software reliability: The role of programmed exception handling.” SIGPLAN Notices 12, no. 3, pp. 95–100.Google Scholar
  61. Satterthwaite, E. [1972]. “Debugging tools for high-level languages.” Software—Practice and Experience 2, pp. 197–217.Google Scholar
  62. Sharp [1977]. “Small Euclid transliterator.” Technical Report, I. P. Sharp Associates Special Systems Division, Toronto.Google Scholar
  63. 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
  64. —, 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
  65. — —, and — [1977]. “Abstraction and verification in Alphard: Defining and specifying iteration and generators.” Comm. ACM 20, no. 8, pp. 553–564.Google Scholar
  66. Shneidermann, B. [1974]. “Two experiments in programming behavior.” Technical Report 17, Indiana University Computer Science Department.Google Scholar
  67. —[1977]. Special issue on language design for reliable software. SIGPLAN Notices 12, no. 3.Google Scholar
  68. 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.Google Scholar
  69. Strachey, C. [1973]. Lecture given at IBM Scientific Center, Peterlee, England.Google Scholar
  70. Teitelman, W. [1972]. “Do what I mean: The programmer's assistant.” Computers and Automation 21, pp. 8–11.Google Scholar
  71. Turski, W. M. [1978]. Computer Programming Methodology. Heyden, London.Google Scholar
  72. Weinberg, Gerald M. [1971]. The Psychology of Computer Programming. Van Nostrand Reinhold, New York.Google Scholar
  73. —[1973]. “The psychology of improved programming performance.” Datamation 18, no. 11.Google Scholar
  74. 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
  75. Wirth, N. [1971a]. “The programming language Pascal.” Acta Informatica 1, pp. 35–63.Google Scholar
  76. — [1971b]. “Program development by stepwise refinement.” Comm. ACM 14, no. 4, pp. 221–227.Google Scholar
  77. — [1974a]. “On the design of programming languages.” In Proc. IFIP Congress 74. pp. 386–393, North-Holland, Amsterdam.Google Scholar
  78. — [1974b]. “On the composition of well-structured programs.” Comp. Surveys 6, no. 4, pp. 247–259.Google Scholar
  79. Wulf, W., and Mary Shaw [1973]. “Global variable considered harmful.” SIGPLAN Notices 8, no. 2, pp. 28–34.Google Scholar
  80. 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
  81. — — and — [1976b]. “An introduction to the construction and verification of Alphard programs.” IEEE Trans. Software Engineering SE-2, no. 4, pp. 253–265.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1979

Authors and Affiliations

  • J. J. Horning
    • 1
  1. 1.Xerox Palo Alto Research CenterUSA

Personalised recommendations