Abstract
This paper presents a twofold proposal to understand the Warren Abstract Machine. A stepwise definition of the WAM by using abstract data types (for every WAM component) is briefly presented. Furthermore, we describe a visual environment which can be used for the emulation of the Warren Abstract Machine. It has been designed as a high level debugger for object oriented programs, following a methodology sketched in the paper. The tool has the capability to show the user the internal behaviour of the WAM during a program execution by showing its components at the desired level of abstraction. The tool provides an interactive and friendly interface. Configurable tracing and dynamic breakpoint location can be used in a simple and coherent way. All the features included in the tool allow for an easy and powerful examination of the WAM.
This work has been partially supported by the.Spanish PRONTIC project TIC93-0737-C02-02
Preview
Unable to display preview. Download preview PDF.
References
H. Aït-Kaci: The WAM: A (Real) Tutorial, The MIT Press, 1991.
E. Böerger, D. Rosensweig: WAM Algebras-A Mathematical Study of Implementation, Part I in Proc. CSL'90, Part II in Proc. Russian Conf. on Logic Prog.' 91.
E. Böerger, D. Rosensweig: The WAM-Definition and Compiler Correctness, Technical Report, TR-14/92, Dipartamento di Informatica, Università di Pisa, 1992.
T. Budd: Object Oriented Programming, Addison Wesley, 1991.
B.J. Cox: Objective-C Interpreter version 4.0 User's Reference Manual, Stepstone Inc. Sandy Hook, CT, 1988.
M. Ducasse: Abstract views of PROLOG executions in Opium, Proceedings ISLP'91, The MIT Press 1991, pp. 18–32.
M. Ducasse: A General Trace Query Mechanism Based on PROLOG, Proceedings PLILP'92, Springer LNCS 631, 1992, pp. 400–414.
J. Gabriel, T. Lindholm, E.L. Lusk, R.A. Overbeck: A Tutorial for the WAM for Computational Logic, ANL-64-84, Argonne Nat. Lab., 1985.
J. García-Martín, J.J. Moreno-Navarro: Friendly-WAM: An Interactive Tool to Understand the Compilation of PROLOG, Proceedings LPAR'92, Springer LNAI 624, Springer Verlag, 1992.
J. García-Martín, J.J. Moreno-Navarro: A Formal Definition of an Abstract PROLOG Compiler, submitted for publication, 1993.
A. Goldberg: Smalltalk-80: The Interactive Programming Environment, Addison Wesley, 1983.
D. Ingalls, S. Wallace, Y.Y. Chow, F. Ludolph, K. Doyle: Fabrik: a Visual Programming Environment, Proceedings OOPSLA'88, 1988.
P. Kursawe: How to Invent a PROLOG Machine, New Generation Comp., 5, 1989.
M.G. Menelaou, J.A. Purchase, R.L. Winder: On Debuggers and Debugging Tools and Techniques, UCL Research Note, London, UK, 1989.
D. Maier, D.S. Warren: Computing with Logic: Logic Programming with PROLOG, Ed. Benjamin Cummings, 1988.
U. Nilsson: Towards a Methodology for the Design of Abstract Machines for LP Languages, to appear in The Journal of Logic Programming, vol. 6, num. 1, 1993.
J.A. Purchase, R.L. Winder: Debugging Tools for Object Oriented Programming, Journal of Object Oriented Programming, vol. 4, n. 3, June 1992, pp. 10–27.
D.M. Russinoff: A Verified PROLOG Compiler for the Warren Abstract Machine, Journal of Logic Programming, vol. 13, n. 4, August 1992, pp. 367–412.
E.Y. Shapiro: Algorithmic Program Debugging, The MIT Press, 1982.
R. Stallman: GDB+ Manual, The gnu C++ Debugger, MA, 1988.
B. Stroustrup: The Programming Language C++, Addison Wesley, 1987.
P.A. Srekely, B.A. Myers: A User Interface Toolkit based on Graphical Objects and Constraints, Proceedings OOPSLA'88, 1988.
D.H.D. Warren: An Abstract Prolog Instruction Set, Technical Note 309, SRI International, Menlo Park, California, October 1983.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1993 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
García-Martín, J., Moreno-Navarro, J.J. (1993). Visualization as debugging: Understanding/debugging the Warren Abstract Machine. In: Fritzson, P.A. (eds) Automated and Algorithmic Debugging. AADEBUG 1993. Lecture Notes in Computer Science, vol 749. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0019413
Download citation
DOI: https://doi.org/10.1007/BFb0019413
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-57417-0
Online ISBN: 978-3-540-48141-6
eBook Packages: Springer Book Archive