ACM Home Page
Please provide us with feedback. Feedback
A semantics for tracing declarative multi-paradigm programs
Full text PdfPdf (262 KB)
Source
International Conference on Principles and Practice of Declarative Programming archive
Proceedings of the 6th ACM SIGPLAN international conference on Principles and practice of declarative programming table of contents
Verona, Italy
Pages: 179 - 190  
Year of Publication: 2004
ISBN:1-58113-819-9
Authors
B. Brassel  Institut für Informatik, Kiel, Germany
M. Hanus  Institut für Informatik, Kiel, Germany
F. Huch  Institut für Informatik, Kiel, Germany
G. Vidal  Technical University of Valencia, Valencia, Spain
Sponsors
ACM: Association for Computing Machinery
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 0,   Downloads (12 Months): 7,   Citation Count: 9
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1013963.1013984
What is a DOI?

ABSTRACT

We introduce the theoretical basis for tracing lazy functional logic computations in a declarative multi-paradigm language like Curry. Tracing computations is a difficult task due to the subtleties of the underlying operational semantics which combines laziness and non-determinism. In this work, we define an instrumented operational semantics that generates not only the computed values and bindings but also an appropriate data structure---a sort of redex trail---which can be used to trace computations at an adequate level of abstraction. In contrast to previous approaches, which rely solely on a transformation to instrument source programs, the formal definition of a tracing semantics improves the understanding of the tracing process. Furthermore, it allows us to formally prove the correctness of the computed trail. A prototype implementation of a tracer based on this semantics demonstrates the usefulness of our approach.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
E. Albert, M. Hanus, F. Huch, J. Oliver, and G. Vidal. Operational Semantics for Declarative Multi-Paradigm Languages. To appear in Journal of Symbolic Computation, 2004.
2
 
3
B. Braßel, O. Chitil, M. Hanus, and F. Huch. Observing Functional Logic Computations. In Proc. of the Sixth Int'l Symposium on Practical Aspects of Declarative Languages (PADL'04), pages 193--208. Springer LNCS 3057, 2004.
 
4
L. Byrd. Understanding the control flow of prolog programs. In Proc. of the Workshop on Logic Programming, Debrecen, 1980.
 
5
O. Chitil. A Semantics for Tracing. In 13th Int'l Workshop on Implementation of Functional Languages (IFL 2001), pages 249--254. Ericsson CSL, 2001.
 
6
 
7
A. Gill. Debugging Haskell by Observing Intermediate Data Structures. In Proc. of the 4th Haskell Workshop. University of Nottingham, 2000.
 
8
J.C. González-Moreno, M.T. Hortalá-González, F.J. López-Fraguas, and M. Rodríguez-Artalejo. An Approach to Declarative Programming based on a Rewriting Logic. Journal of Logic Programming, 40:47--87, 1999.
9
 
10
 
11
M. Hanus (ed.). Curry: An Integrated Functional Logic Language. Available at: http://www.informatik.uni-kiel.de/~curry/.
12
 
13
 
14
H. Nilsson and P. Fritzson. Algorithmic debugging for lazy functional languages. Journal of Functional Programming, 4(3):337--370, 1994.
 
15
 
16
S. Peyton Jones, editor. Haskell 98 Language and Libraries : The Revised Report. Cambridge University Press, 2003.
 
17
 
18
 
19
M. Wallace, O. Chitil, T. Brehm, and C. Runciman. Multiple-View Tracing for Haskell: a New Hat. In Proc. of the 2001 ACM SIGPLAN Haskell Workshop. Universiteit Utrecht UU-CS-2001-23, 2001.

CITED BY  9

Collaborative Colleagues:
B. Brassel: colleagues
M. Hanus: colleagues
F. Huch: colleagues
G. Vidal: colleagues