A Debugging Scheme for Functional Programs