Riesco Rodríguez, Adrián and Verdejo López, José Alberto and Caballero, Rafael and Martí Oliet, Narciso (2008) Declarative Debugging of Maude Modules. [ Technical Report SIC; 6/08, ]
PDF (Descripción de la depuración declarativa de respuestas erróneas para cualquier tipo de módulo de Maude )
Official URL: http://maude.sip.ucm.es/debugging/
We introduce a declarative debugger for Maude modules: functional modules correspond to executable specifications in membership equational logic, while system modules correspond to rewrite theories. First we describe the construction of appropriate debugging trees for oriented equational and membership inferences and rewrite rules. These trees are obtained as the result of collapsing in
proof trees all those nodes whose correction does not need any justification.
We include several extended examples to illustrate the use of the declarative debugger and its main features, such as two possible constructions of the debugging tree, two different strategies to traverse it, use of a correct module to reduce the number of questions asked to the user, selection of trusted vs. suspicious statements by means of labels, and trusting of statements “on the ﬂy.”
Since Maude supports the reflective features in its underlying logic, it includes a predefined META-LEVEL module providing access to metalevel concepts such as specifications or computations as usual data. This allows us to generate and navigate the debugging tree of a Maude computation using operations in Maude itself. Even the user interface of the declarative debugger for Maude can be specified in Maude itself. We describe in detail this metalevel implementation of our tool.
|Item Type:||Working Paper or Technical Report|
|Uncontrolled Keywords:||Declarative debugging, Rewriting logic, Maude, Metalevel implementation|
|Subjects:||Sciences > Computer science > Programming languages (Electronic computers)|
|Series Name:||Technical Report SIC|
|Deposited On:||24 Nov 2009 08:23|
|Last Modified:||15 Sep 2015 08:09|
Repository Staff Only: item control page