Abstract
A semi-visual framework for the specification of syntax and semantics of imperative programming languages, called Montages, was proposed in an earlier work by the authors. The primary aim of this formalism is to assist in recording the decisions taken by the designer during the language design process. The associated tool Gem-Mex allows the designer to maintain the specification and to inspect the semantics to verify whether the design decisions have been properly formalized. Experience with full-scale case studies on Oberon, Java, and domain specific languages showed the close relationship to Finite State Machines (FSMs). This paper gives a new definition of Montages based on FSMs. It confers to the formalism enhanced pragmatic qualities, such as writability, extensibility, readability, and, in general, ease of maintenance.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
M. Anlauff. The Aslan Language Manual. Part of the Aslan distribution.
M Anlauff, P.W. Kutter, and A. Pierantonio. Formal Aspects of and Development Environments for Montages. In M. Sellink, editor, 2nd Int. Workshop on the Theory and Practice of Alg. Spec., Workshops in Computing. Springer, 1997.
M. Anlauff, P. W. Kutter, and A. Pierantonio. The Gem-Mex Tool Homepage. http://www.first.gmd.de/~ma/gem/, 1997.
M. Anlauff, P. W. Kutter, and A. Pierantonio. The Montages Project Web Page. http://www.tik.ee.ethz.ch/~montages, 1997.
E. Börger and J. Huggins. Abstract state machines 1988–1998: Commented ASM bibliography. In H. Ehrig, editor, EATCS Bulletin, Formal Specification Column, number 64, pages 105–127. EATCS, February 1998.
E. Börger and D. Rosenzweig. A Mathematical Definition of Full Prolog. In Science of Computer Programming, volume 24, pages 249–286. North-Holland, 1994.
P. Borra, D. Clement, T. Despeyroux, J. Incerpi, G. Kahn, B. Lang, and V. Pascual. CENTAUR: The system. Technical Report 777, INRIA, Sophia Antipolis, 1987.
Y. Gurevich. Logic and the Challenge of Computer Science. In E. Börger, editor, Theory and Practice of Software Engineering, pages 1–57. CS Press, 1988.
Y. Gurevich. Evolving Algebras 1993: Lipari Guide. In E. Börger, editor, Specification and Validation Methods. Oxford University Press, 1995.
Y. Gurevich and J. K. Huggins. The Semantics of the C Programming Language, volume 702 of LNCS, pages 274–308. Springer, 1993.
A Heberle, W. Löwe, and M. Trapp. Safe reuse of source to intermediate language compilations. 9th Int. Symposium on Software Reliability Engineering, 1998. http://chillarege.com/issre/fastabstracts/98417.html.
G. Hedin. Reference attribute grammars. In Second Workshop on Attribute Grammars and Their Applications, pages 153–172, 1999.
J. Huggins. Abstract State Machines Web Page. http://www.eecs.umich.edu/gasm.
G. Kahn. Natural Semantics. In Proceedings of the Symp. on Theoretical Aspects of Computer Science, Passau, Germany, 1987.
P. W. Kutter. Executable Specification of Oberon Using Natural Semantics. Term Work, ETH Zürich, implementation on the Centaur System [7], 1996.
P. W. Kutter and F. Haussmann. Dynamic Semantics of the Programming Language Oberon. Term work, ETH Zürich, July 1995. A revised version appeared as technical report of Institut TIK, ETH, number 27, 1997.
P. W. Kutter and A. Pierantonio. Montages: Specifications of Realistic Programming Languages. JUCS, Springer, 3(5):416–442, 1997.
P. W. Kutter and A. Pierantonio. The Formal Specification of Oberon. JUCS, Springer, 3(5):443–503, 1997.
P. W. Kutter, D. Schweizer, and L. Thiele. Integrating Formal Domain-Specific Language Design in the Software Life Cycle. In Current Trends in Applied Formal Methods, LNCS. Springer, October 1998.
P. D. Mosses. Theory and Practice of Action Semantics. In MFCS’96, 21st International Symposium, volume 1113 of LNCS, pages 37–61. Springer Verlag, 1996.
M. Odersky. A New Approach to Formal Language Definition and its Application to Oberon. PhD thesis, ETH Zürich, 1989.
A. Poetzsch-Heffter. Prototyping realistic programming languages based on formal specifications. Acta Informatica, 34:737–772, 1997. 1997.
D. A. Schmidt. Denotational Semantics: A Methodology for Language Development. Allyn & Bacon, 1986.
A. van Deursen, J. Heering, and P. Klint, editors. Language Prototyping — An Algebraic Approach, volume 5 of AMAST Series in Computing. World Scientific, 1996.
C. Wallace. The Semantics of the Java Programming Language: Preliminary Version. Technical Report CSE-TR-355-97, University of Michigan EECS Department Technical Report, 1997.
N. Wirth. The Programming Language Oberon. Software-Practice and Experience, 18(7):671–690, 1988.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2000 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Anlauff, M., Kutter, P.W., Pierantonio, A. (2000). Enhanced Control Flow Graphs in Montages. In: Bjøner, D., Broy, M., Zamulin, A.V. (eds) Perspectives of System Informatics. PSI 1999. Lecture Notes in Computer Science, vol 1755. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-46562-6_4
Download citation
DOI: https://doi.org/10.1007/3-540-46562-6_4
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-67102-2
Online ISBN: 978-3-540-46562-1
eBook Packages: Springer Book Archive