skip to main content
10.1145/512927.512941acmconferencesArticle/Chapter ViewAbstractPublication PagespoplConference Proceedingsconference-collections
Article
Free Access

Advice on structuring compilers and proving them correct

Published:01 October 1973Publication History

ABSTRACT

The purpose of this paper is to advise an approach (and to support that advice by discussion of an example) towards achieving a goal first announced by John McCarthy: that compilers for higher-level programming languages should be made completely trustworthy by proving their correctness. The author believes that the compiler-correctness problem can be made much less general and better-structured than the unrestricted program-correctness problem; to do so will of course entail restricting what a compiler may be.

References

  1. G. Birkhoff and J. D. Lipson, "Heterogeneous Algebras", J. Combinatorial Theory 8, pp. 115-133 (1970).Google ScholarGoogle ScholarCross RefCross Ref
  2. R. M. Burstall and P. J. Landin, "Programs and Their Proofs: an Algebraic Approach", Machine Intelligence 4 (1969).Google ScholarGoogle Scholar
  3. D. Scott and C. Strachey, "Towards a Mathematical Semantics for Computer Languages", Programming Research Group Monograph PRG-6, Oxford Computing Laboratory (1971).Google ScholarGoogle Scholar
  4. P. J. Landin, "A Program-Machine Symmetric Automata Theory", Machine Intelligence 5 (1970).Google ScholarGoogle Scholar
  5. F. L. Morris, "Correctness of Translations of Programming Languages", Stanford Computer Science Memo CS 72-303 (1972).Google ScholarGoogle Scholar
  6. R. Milner and R. Weyhrauch, "Proving Compiler Correctness in a Mechanized Logic", Machine Intelligence 7 (1972).Google ScholarGoogle Scholar
  7. P. Hitchcock and D. Park, "Induction Rules and Proofs of Termination", Proc. Colloques IRIA Theorie des automates des langages et de la Programmation. Rocquencourt, France, July 1972.Google ScholarGoogle Scholar
  1. Advice on structuring compilers and proving them correct

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in
    • Published in

      cover image ACM Conferences
      POPL '73: Proceedings of the 1st annual ACM SIGACT-SIGPLAN symposium on Principles of programming languages
      October 1973
      242 pages
      ISBN:9781450373494
      DOI:10.1145/512927

      Copyright © 1973 ACM

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 1 October 1973

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • Article

      Acceptance Rates

      POPL '73 Paper Acceptance Rate22of100submissions,22%Overall Acceptance Rate824of4,130submissions,20%

      Upcoming Conference

      POPL '25

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader