Skip to main content

Examples for change of types and object structures

  • III. Program Development By Transformation
  • Chapter
  • First Online:
Book cover Program Construction

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

Abstract

The abstract, algebraic definition of data types by describing their properties forms a solid formal basis for the specification of computation structures independent of their particular representations. Thus programs can be designed and developed working with objects of an abstractly defined computation structure. The choice of particular representations (implementations), the releasing of this representation to the "outer world" and the consequences on further program development are demonstrated with examples of joint refinement.

This research was carried out within the Sonderforschungsbereich 49, Programmiertechnik, Munich.

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

Access this chapter

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

Literature

  1. F.L. Bauer: Design of a Programming Language for a Program Transformation System. This volume.

    Google Scholar 

  2. F.L. Bauer, M. Broy, R. Gnatz, W. Hesse, B. Krieg-Brückner: Notes on the Project CIP: Towards a Wide Spectrum Language to Support Program Development by Transformations. Technische Universität München, Institut für Informatik, TUM-INFO-7722, 1977

    Google Scholar 

  3. F. L. Bauer, H. Partsch, P. Pepper, H. Wössner: Notes on the Project CIP: Outline of a Transformation System. Technische Universität München, Institut für Informatik, TUM-INFO-7729, 1977

    Google Scholar 

  4. F.L. Bauer, M. Broy, R. Gnatz, W. Hesse, B. Krieg-Brückner, H. Partsch, P. Pepper, H. Wössner: Towards a Wide Spectrum Language to Support Program Specification and Program Development. SIGPLAN Notices 13 (12), 15–24 (1978). This volume

    Article  Google Scholar 

  5. G. Birkhoff, J.D. Lipson: Heterogeneous Algebras. J. of Combinatorial Theory 8, 115–133 (1970)

    Article  MathSciNet  Google Scholar 

  6. R.M. Burstall, J.A. Goguen: Putting Theories together to Make Specifications. Proceedings of the Int. Joint Conf. on Artificial Intelligence 1977

    Google Scholar 

  7. C.H. Correll: Proving Programs Correct through Refinement. Acta Informatica 9, 121–132 (1978)

    Article  MathSciNet  Google Scholar 

  8. O.-J. Dahl, B. Myhrhaug, K. Nygaard: SIMULA 67 Common Base Language. Norwegian Computing Center, Oslo, May 1968

    Google Scholar 

  9. E.W. Dijkstra: A Discipline of Programming. Englewood Cliffs, N.J.: Prentice-Hall, 1976

    MATH  Google Scholar 

  10. H. Ehrig, H.J. Kreowski, P. Padawitz: Stepwise specification and implementation of abstract data types. In: G. Ausiello, C. Böhm (eds): Automata, Languages and Programming. Proc. 5th Colloquium, Udine, July 1978. Springer Lecture Notes on Computer Science 62

    Google Scholar 

  11. J.A. Goguen, J.W. Thatcher, E.G. Wagner: An Initial Algebra Approach to the Specification, Correctness and Implementation of Abstract Data Types. In: R.T. Yeh (ed.): Current trends in programming methodology, Vol. 3, Data Structuring, N.J.: Prentice Hall, 1978

    Google Scholar 

  12. J.V. Guttag: The Specification and Application to Programming of Abstract Data Types. Ph. D. Th., Univ. of Toronto, Dept. Comp. Sci., Rep. CSRG-59, 1975

    Google Scholar 

  13. J.V. Guttag, E. Horowitz, D.R. Musser: Abstract Data Types and Software Validation. USC/Information Sciences Institute, RR-76-48 (1976)

    Google Scholar 

  14. J.V. Guttag, E. Horowitz, D.R. Musser: The Design of Data Type Specifications. USC/Information Sciences Institute, RR-76-49 (1976)

    Google Scholar 

  15. J.V. Guttag, J.J. Horning: The Algebraic Specification of Abstract Data Types. Acta Informatica 10, 27–52 (1978)

    Article  MathSciNet  Google Scholar 

  16. F.W. von Henke: On Generating Programs from Data Types: An Approach to Automatic Programming. In: G. Huet, G. Kahn (eds.): Proving and Improving Programs. Colloques IRIA, Arc et Senans, 1–3 juillet 1975

    Google Scholar 

  17. C.A.R. Hoare: Proof of Correctness of Data Representations. Acta Informatica 1: 4, 271–281 (1972)

    Article  Google Scholar 

  18. C.A.R. Hoare: Recursive Data Structures. Stanford University, A.I.Lab., Stan-CS-73-400, Oct. 1973

    Google Scholar 

  19. D.E. Knuth: The Art of Computer Programming. Reading, Mass: Addison-Wesley, 1969

    MATH  Google Scholar 

  20. D.E. Knuth, J.L. Szwarcfiter: A Structured Program to Generate all Topological Sorting Arrangements. Inf. Proc. Letters 2, 153–157 (1974)

    Article  Google Scholar 

  21. B. Krieg-Brückner: Concrete and Abstract Specification, Modularization and Program Development by Transformation. Technische Universität München, Institut für Informatik, TUM-INFO-7805, 1978

    Google Scholar 

  22. Th. A. Linden: Specifying Abstract Data Types by Restriction. ACM SIGSOFT, Software Engineering Notes 3:2, 7–13 (1978)

    Article  Google Scholar 

  23. B. Liskov, S. Zilles: Programming with Abstract Data Types. Proc. ACM SIGPLAN Conf. on Very High Level Languages, SIGPLAN Notices 9: 4, 50–59 (1974)

    Article  Google Scholar 

  24. B. Liskov, S. Zilles: Specification Techniques for Data Abstractions. IEEE Trans. on Software Eng. 1: 1, 7–18 (1975)

    Article  Google Scholar 

  25. M. Majster: Limits of the "Algebraic" Specification of Abstract Data Types. SIGPLAN Notices 12: 10, 37–41 (1977)

    Article  MathSciNet  Google Scholar 

  26. J. McCarthy: A Basis for a Mathematical Theory of Computation. In: P. Braffort, D. Hirschberg (eds.): Computer Programming and Formal Systems. Amsterdam: North-Holland, 1963

    Google Scholar 

  27. A.J. Perlis, C. Thornton: Symbol Manipulation by Threaded Lists. Comm. ACM 3, 195–204 (1960)

    Article  Google Scholar 

  28. D. Scott: Data Types as Lattices. SIAM J. of Computing 5, 522–587 (1976)

    Article  MathSciNet  Google Scholar 

  29. W. Wulf: ALPHARD: Towards a Language to Support Structured Programs. Carnegie-Mellon Univ., Pittsburgh, Dept. of Comp. Sc., Internal Report, April 1974

    Google Scholar 

  30. S. Zilles: Algebraic Specification of Data Types. Computation Structures Group Memo 119, MIT, Combridge, Mass.

    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

Partsch, H., Broy, M. (1979). Examples for change of types and object structures. In: Bauer, F.L., et al. Program Construction. Lecture Notes in Computer Science, vol 69. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0014676

Download citation

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

  • 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