Haskell Debugging People, Groups, and Projects

Here is a list of people that are currently active in or around the Haskell debugging community. They are in no particular order. It in not intended to be a survey of the research area, in particular it does not give credit to the many people who have made significant contributions to this field, but have now moved on to other things.


Tracing Debuggers

ART - Colin Runciman & Malcolm Wallace & Olaf Chitil, York

Colin Runciman <Colin.Runciman@cs.york.ac.uk>, Malcolm Wallace <Malcolm.Wallace@cs.york.ac.uk> and Olaf Chitil <Olaf.Chitil@cs.york.ac.uk> at  York are working on a new project called ART (Advanced Redex Trails).  This project will develop a tracer/debugger for Haskell programs, using nhc, but they are also committed to making a portable redex trails system that will work with other Haskell98 implementations.

ART building on the earlier York project with Jan Sparud (Redex Trails),  and aims to advance this successful but limited prototype to the stage of a convincing tool for practical applications.

York has a long history of doing research into tools for Haskell. In particular, both David Wakeling and Niklas Röjemo were instrumental to the development of various profiling tools. Also, see the Auburn tool, below.

Richard Watson,University of Southern Queensland

Richard Watson <rwatson@usq.edu.au> worked on a trace debugger for a subset of Haskell in his PhD, and remains interested in this research area. He is a visitor at OGI this summer, and is using his time on debugging thigs.

Andy Gill, OGI

Andy Gill <andy@galconn.com> has written a library that provides a combinator for observing data structures. It is an tracer debugger, with the trace being given to a stand alone viewer program, written in Java. HOOD is portable across several Haskell system, depending only on commonly implemented extensions to Haskell. It supports debugging inside full Haskell (by virtue of being a library), and the library is already available via the GHC CVS repository.


Declarative Debugging

Henrik Nilsson, Linköping University, Sweden

Henrik Nilsson <henni@ida.liu.se> is working on debugging tools for lazy functional languages.

Buddha - Lee Naish and Bernie Pope, University of Melbourne

Lee Naish <lee@cs.mu.oz.au> is working on debugging of of logic, functional and other declarative languages. He has a page about Declarative Debugging. Bernie Pope <bjpop@cs.mu.oz.au> is working with Lee Naish on his PhD, doing further development of Buddha.


Profiling

The Glasgow Haskell Compiler Team

The GHC team deserve a mention because, apart from being a cool bunch, they provide various profiling tools for the compiler, and they are actively developing them.


Testing Frameworks

QuickCheck - Koen Claessen & John Hughes, Chalmers

Koen Claessen <koen@cs.chalmers.se> and John Hughes <rjmh@cs.chalmers.se> have been working on QuickCheck, a lightweight tool which aids the Haskell programmer in formulating and testing properties of programs. Properties are described as Haskell functions, and can be automatically tested on random input, but it is also possible to define custom test data generators.

Random testing is an acceptable way of testing, especially for functional programs, because properties for functions can be stated locally and are therefore small, and random testing is known to be extremely well suited for small programs. QuickCheck has been successfully used in a number of case studies.

Auburn - Graeme Moss and Colin Runciman

York have a system called Auburn, which is being developed by Graeme Moss and Colin Runciman. It is a toolkit for testing functional data structures, both for performance and for correctness. It also allows automated benchmarking of functional data structures.


Interpreters

Hugs

Hugs98 is still available, and as cool as ever.

GHCi

The next version of GHC will be able to run GHC binaries interactively, via a hugs like interface. This will prove invaluable for debugging GHC code.


Previous Work in the Haskell Debugging Community

This is an attempt to list people active in the last few years, but recently left the Haskell Debugging community.

Alastair Penney, Bristol

Jan Sparud, Chalmers

Jan Sparud <sparud@cs.chalmers.se> worked on Redex trails, and implemented the Redex trail mechanism inside nhc, as part of the York team, on a predecessor project to ART. He is now working in industry.

Andrew MacGibbon,Auckland

Andrew MacGibbon <andrew-m@cs.auckland.ac.nz> did his masters on "Debugging for Functional Programs."


Back to Haskell Debugging Technologies.


My understanding is that all the information on this page is public knowledge. I did dig around the web quite a bit to compile this list, so if anyone is unhappy about being referenced or the description of your tool, then please e-mail me, and we'll fix the problem.

This page was last update on Wednesday, October 18, 2000 by Andy Gill