Concatenation of program modules an algebraic approach to the semantic and implementation problems
The paper studies the semantic and implementation problems of programming languages which allow module concatenation. Three known languages of that class are Simula-67, Smalltalk and Loglan. The structure of program modules is treated as an algebra. A concise set of algebraic axioms defining this structure is given. The addressing problem is formulated in algebraic terms. The identifier binding rule is reduced to the evaluation of terms in the algebra of modules. The normal form theorem solves the question of this evaluation. The results allow to develop two efficient updating algorithms going beyond standard Dijkstra's algorithm and relevant for this class of languages. The paper ends with the detailed implementation techniques. The correctness of this implementation is proved. All of this allow to construct a new family of running-systems for languages with module concatenation.
KeywordsPartial Function Program Module Module Concatenation Implementation Problem Object Oriented Language
Unable to display preview. Download preview PDF.
- [Ba83]Bartol,W.M., Kreczmar,A., Litwiniuk,A.I., Oktaba,H., Semantics and Implementation of Prefixing at Many Levels, in: Logics of Programs and their Application, LNCS148, 1983, 45–80Google Scholar
- [Da70]Dahl,O.J., Myrhaug,B., Nygaard,K., Simula 67 Common Base Language, Norwegian Computer Center, 1970Google Scholar
- [Hor83]Horowitz,E., Fundamentals of Programming Languages, Springer Verlag, 1983Google Scholar
- [Ing79]Ingalls,D.H., The Smalltalk 76 Programming System Design and Implementation, Proc. 5th ACM Principles of Prog.Lang., 1976, 9–16Google Scholar
- [Kr84]Krause,M., Kreczmar,A., Langmaack,H., Salwicki,A., Specification and Implementation Problems of Programming languages Proper for Hierarchical Data Types, Report 8410, Institut fuer Informatik und Praktische Mathematik, Universitat Kiel, 1984Google Scholar
- [Kr79]Krogdahl, S., On the Implementation of Beta, Norwegian Computing Center, 1979Google Scholar
- [Log83]Loglan-82 Programming Language,Report, Polish Scientific Publisher, Warsaw 1983Google Scholar
- [War84]Warpechowski, M., An Algebraic Model for Proving Address Properties in Languages with Prefixing and Module Nesting,Manuscript, Institute of Informatics, University of Warsaw, 1984Google Scholar