Abstract
This paper studies the relationship between our long-standing algebraic concept of module specifications and modules as they appear in conventional programming languages. The approach we take is to introduce an intermediate algebraic concept of abstract program modules, which structurally model concrete program modules. We show how a system of abstract program modules is formally related to a system of module specifications. This work is intended to aid the design of modularization mechanisms and to facilitate the transformational development of a system of module specifications into a system of program modules.
This work was carried out as part of a long term cooperation agreement between the Technical University of Berlin and the University of Southern California.
Chapter PDF
Similar content being viewed by others
Keywords
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.
References
E.K. Blum, H. Ehrig, and F. Parisi-Presicce. Algebraic specification of modules and their basic interconnection. JCSS, 34, 1987.
H. Ehrig, W. Fey, F. Parisi-Presicce, and E.K. Blum. Algebraic theory of module specifications with constraints. In Proceedings MFCS. Springer-Verlag, LNCS 233, 1986.
H. Ehrig and B. Mahr. Fundamentals of Algebraic Specification I. Springer Verlag, Berlin, 1985.
H. Ehrig and B. Mahr. Fundamentals of Algebraic Specification II. Springer Verlag, Berlin, 1990.
H. Ehrig and H. Weber. Programming in the large with algebraic module specifications., pages 675–684. Information Processing 86. North-Holland, Amsterdam, 1986.
K. Futatsugi, J.A. Goguen, J.P. Jouannaud, and J. Meseguer. Principles of obj2. In Proceedings 12th ACM Symposium on Principles of Programming Languages, 1985.
M.-C. Gaudel. A first introduction to pluss. In Proceedings ALYEY Workshop on Formal Specification, 1984. Swendon.
J.A. Goguen, J.W. Thatcher, and E.G. Wagner. An initial algebra approach to the specification, correctness and implementation of abstract data types. Technical Report RC 6487, IBM, 1976.
R. Harper, D.B. MacQueen, and R. Milner. Standard ml. Technical Report ECS-LFCS-86-2, University of Edinburgh, 1986.
B. Liskov and S. Zilles. Programming with abstract data types. SIGPLAN Notices, 9, 1974.
D.C. Parnas. On the criteria to be used in decomposing systems into modules. CACM, 15(12):1053–1058, 1972.
D.C. Parnas. A technique for software module specification with examples. CACM, 15(5):330–336, 1972.
R. Prieto-Diaz and J. Neighbors. Module interconnection languages: a survey. Technical Report ICS Technical Report 189, C.S. Dept. UC Irvine, 1982.
Springer Verlag LNCS 106, Berlin. The Programming Language Ada, Reference Manual, 1981.
D. Sannella and A. Tarlecki. Extended ml: an institution independent framework for formal program development. In Proceedings Workshop on Category Theory and Computer Programming, pages 364–389. LNCS 240, 1986.
J.W. Thatcher, E.G. Wagner, and J.B. Wright. Data type specification: parameterization, and the power of specification techniques. In 10th Symp. on Theory of Computing, 1978.
N. Wirth. Programming in Modula-2. Springer Verlag, Berlin, 1982.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1991 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Löwe, M., Ehrig, H., Fey, W., Jacobs, D. (1991). On the relationship between algebraic module specifications and program modules. In: Abramsky, S., Maibaum, T.S.E. (eds) TAPSOFT '91. TAPSOFT 1991. Lecture Notes in Computer Science, vol 494. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3540539816_62
Download citation
DOI: https://doi.org/10.1007/3540539816_62
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-53981-0
Online ISBN: 978-3-540-46499-0
eBook Packages: Springer Book Archive