A debugging environment for lazy functional languages
Article
- 20 Downloads
- 1 Citations
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.
Keywords
Operating System Artificial Intelligence Reduction Process Functional Program Prototype Implementation
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
Preview
Unable to display preview. Download preview PDF.
References
- 1.Augustsson, L. A Compiler for Lazy ML. InProceedings of the ACM Symposium on Lisp and Functional Programming (1984) 218–227.Google Scholar
- 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).Google Scholar
- 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).Google Scholar
- 5.Lieberman, Henry. Steps towards better debugging tools for Lisp. InProceedings of the ACM Conference on Lisp and Functional Programming (1984) 247–255.Google Scholar
- 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).Google Scholar
- 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).Google Scholar
- 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
Copyright information
© Kluwer Academic Publishers 1992