Skip to main content

Source-Based Trace Exploration

  • Conference paper
Implementation and Application of Functional Languages (IFL 2004)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 3474))

Included in the following conference series:

  • 305 Accesses

Abstract

Tracing a computation is a key method for program comprehension and debugging. Hat is a tracing system for Haskell 98 programs. During a computation a trace is recorded in a file; then the user studies the trace with a collection of viewing tools. Different views are complementary and can productively be used together. Experience shows that users of the viewing tools find it hard to keep orientation and navigate to a point of interest in the trace. Hence this paper describes a new viewing tool where navigation through the trace is based on the program source. The tool combines ideas from algorithmic debugging, traditional stepping debuggers and dynamic program slicing.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others

References

  1. Braßel, B., Hanus, M., Huch, F., Vidal, G.: A semantics for tracing declarative multi-paradigm programs. In: Proceedings of the 6th ACM-SIGPLAN International Conference on Principles and Practice of Declarative Programming, pp. 179–190. ACM Press, New York (2004)

    Chapter  Google Scholar 

  2. Chitil, O., Runciman, C., Wallace, M.: Freja, Hat and Hood — A comparative evaluation of three systems for tracing and debugging lazy functional programs. In: Mohnen, M., Koopman, P. (eds.) IFL 2000. LNCS, vol. 2011, pp. 176–193. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  3. Chitil, O., Runciman, C., Wallace, M.: Transforming Haskell for tracing. In: Peña, R., Arts, T. (eds.) IFL 2002. LNCS, vol. 2670, pp. 165–181. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  4. Claessen, K., Runciman, C., Chitil, O., Hughes, J., Wallace, M.: Testing and tracing lazy functional programs using QuickCheck and Hat. In: Jeuring, J., Jones, S.L.P. (eds.) AFP 2002. LNCS, vol. 2638, pp. 59–99. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  5. Nilsson, H.: Declarative Debugging for Lazy Functional Languages. PhD thesis, Linköping, Sweden (May 1998)

    Google Scholar 

  6. Nilsson, H., Sparud, J.: The evaluation dependence tree as a basis for lazy functional debugging. Automated Software Engineering: An International Journal 4(2), 121–150 (1997)

    Article  Google Scholar 

  7. Ochoa, C., Silva, J., Vidal, G.: Dynamic Slicing Based on Redex Trails. In: Proc. of the ACM SIGPLAN 2004 Symposium on Partial Evaluation and Program Manipulation (PEPM 2004), pp. 123–134. ACM Press, New York (2004)

    Chapter  Google Scholar 

  8. Pope, B., Naish, L.: Practical aspects of declarative debugging in Haskell 1998. In: Fifth ACM SIGPLAN Conference on Principles and Practice of Declarative Programming, pp. 230–240 (2003)

    Google Scholar 

  9. Shapiro, E.Y.: Algorithmic Program Debugging. MIT Press, Cambridge (1983)

    Google Scholar 

  10. Sparud, J., Runciman, C.: Complete and partial redex trails of functional computations. In: Clack, C., Hammond, K., Davie, T. (eds.) IFL 1997. LNCS, vol. 1467, pp. 160–177. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  11. Sparud, J., Runciman, C.: Tracing lazy functional computations using redex trails. In: Hartel, P.H., Kuchen, H. (eds.) PLILP 1997. LNCS, vol. 1292, pp. 291–308. Springer, Heidelberg (1997)

    Chapter  Google Scholar 

  12. Tip, F.: A survey of program slicing techniques. Journal of programming languages 3, 121–189 (1995)

    Google Scholar 

  13. Wallace, M., Chitil, O., Brehm, T., Runciman, C.: Multiple-view tracing for Haskell: a new Hat. In: Preliminary Proceedings of the 2001 ACM SIGPLAN Haskell Workshop, UU-CS-2001-23. Universiteit Utrecht (2001); Final proceedings to appear in ENTCS 59(2)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2005 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Chitil, O. (2005). Source-Based Trace Exploration. In: Grelck, C., Huch, F., Michaelson, G.J., Trinder, P. (eds) Implementation and Application of Functional Languages. IFL 2004. Lecture Notes in Computer Science, vol 3474. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11431664_8

Download citation

  • DOI: https://doi.org/10.1007/11431664_8

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-26094-3

  • Online ISBN: 978-3-540-32038-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics