Skip to main content

Abstraction and Verification in Alphard: A Symbol Table Example

  • Chapter

Abstract

The design of the Alphard programming language has been strongly influenced by ideas from the areas of programming methodology and formal program verification. In this paper we design, implement, and verify a general symbol table mechanism. This example is rich enough to allow us to illustrate the use as well as the definition of programmer-defined abstractions. The verification illustrates the power of the form to simplify proofs by providing strong specifications of such abstractions.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. David Gries, Compiler Construction for Digital Computers, Wiley, 1971.

    Google Scholar 

  2. John Guttag, “Abstract Data Types and the Development of Data Structures”, Supplement to the Proceedings of the SICPLAN/SICMOD Conference on Data: Abstraction, Definition and Structure, March 1976 (pp. 37–46). Also Comnuxnications of the ACM (to appear).

    Google Scholar 

  3. Paul R. Haimos, Naive Set Theory, Van Nostrand, 1960.

    Google Scholar 

  4. C. A. R. Moare, “Proof of Correctness of Data Representations”, Acta Information, 1, 4, 1972 (pp. 271–281 ).

    Article  Google Scholar 

  5. Donald E. Knuth, The Art of Computer Programming Volume 3, Sorting and Searching, Addison-Wesley, 1973.

    Google Scholar 

  6. Mary Shaw, “Abstraction and Verification in Alphard: Design and Verification of a Tree Handler”, Proc. fifth Texas Conference on Computing Systems, 1976 (pp. 86–94 ).

    Google Scholar 

  7. Mary Shaw, Wm. A. Wulf, and Ralph L. London, “Abstraction and Verification in Alphard: Iteration and Generators”, Carnegie-Mellon University and USC Information Sciences Institute Technical Reportst 1976. Also Communications of the ACM (to appear).

    Google Scholar 

  8. Ben Wegbreit and Jay M. Spitzen, “Proving Properties of Complex Data Structures”, Journal of the ACM, 23, 2, April 1976 (pp. 389–396 ).

    Article  MathSciNet  MATH  Google Scholar 

  9. Wm. A. Wulf, Ralph L. London, and Mary Shaw, “Abstraction and Verification in Alphard: Introduction to Language and Methodology”, Carnegie-Mellon University and USC Information Sciences Institute Technical Reports, 1976.

    Google Scholar 

  10. Wm. A. Wulf, Ralph L. London, and Mary Shaw, “An Introduction to the Construction and Verification of Alphard Programs”, IEEE Transactions on Software Engineering, SE- 2, 4, December 1976 (pp. 253–265 ).

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1978 Elsevier North-Holland, Inc.

About this chapter

Cite this chapter

London, R.L., Shaw, M., Wulf, W.A. (1978). Abstraction and Verification in Alphard: A Symbol Table Example. In: Shaw, M. (eds) Alphard: Form and Content. Springer, New York, NY. https://doi.org/10.1007/978-1-4612-5979-4_11

Download citation

  • DOI: https://doi.org/10.1007/978-1-4612-5979-4_11

  • Publisher Name: Springer, New York, NY

  • Print ISBN: 978-0-387-90663-8

  • Online ISBN: 978-1-4612-5979-4

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics