Skip to main content
Log in

A debugging environment for lazy functional languages

  • Published:
LISP and Symbolic Computation

Abstract

This paper describes a new approach for debugging lazy functional languages. It rests on the fact that a functional program is the transformation of an expression; one debugs a program by investigating the syntactic form of the expression and by stopping the reduction process at given points. We show what problems are involved and our approach to solving them in a prototype implementation.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Augustsson, L. A Compiler for Lazy ML. InProceedings of the ACM Symposium on Lisp and Functional Programming (1984) 218–227.

  2. Hall, Cordelia V. and O'Donnell, John T. Debugging in applicative languages.Journal of Lisp and Symbolic Computation, 1, 1 (1988).

    Google Scholar 

  3. Hudak, P. and Wadler (editors), P.Report on the Programming Language Haskell, A Non-strict Purely Functional Language (Version 1.1). Technical Report, Yale University, Department of Computer Science (August 1991).

  4. Latendresse, M.Un environnement de mise au point de programmes écrits dans un langage fonctionnel à évaluation paresseuse. Master's thesis, Départment d'informatique et de recherche opérationnelle, Université de Montréal (1990).

  5. Lieberman, Henry. Steps towards better debugging tools for Lisp. InProceedings of the ACM Conference on Lisp and Functional Programming (1984) 247–255.

  6. Milner, R. How ML evolved.Polymorphism, 1, 1 (1983) 1–6.

    Google Scholar 

  7. Milner, R., Tofte, M., and Harper, R.The Definition of Standard ML. MIT Press (1990).

  8. Peyton-Jones, S. L.Directions in Functional Programming Research. Technical Report InDRA note 1575, Department of Computer Science, University College, London (1985).

    Google Scholar 

  9. Peyton-Jones, S. L.The Implementation of Functional Programming Languages. Prentice-Hall (1987).

  10. Runciman, C. and Toyn, I. Adapting combinator and SECD machines to display snapshots of functional computations.New Generation Computing, 4 (1986) 339–363.

    Google Scholar 

  11. Snyder, Robin M. Lazy debugging of lazy functional language.New Generation Computing, 8, 139–161 (1990).

    Google Scholar 

  12. Turner, D. A. A new implementation technique for applicative languages.Software — Practice and Experience, 9 (1979) 31–49.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Lapalme, G., Latendresse, M. A debugging environment for lazy functional languages. Lisp and Symbolic Computation 5, 271–287 (1992). https://doi.org/10.1007/BF01807507

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF01807507

Keywords

Navigation