Lazy call-by-value evaluation

  • Authors:
  • Bernd Braßel;Michael Hanus;Sebastian Fischer;Frank Huch;Germán Vidal

  • Affiliations:
  • CAU Kiel, Kiel, Germany;CAU Kiel, Kiel, Germany;CAU Kiel, Kiel, Germany;CAU Kiel, Kiel, Germany;Technical University of Valencia, Valencia, Spain

  • Venue:
  • ICFP '07 Proceedings of the 12th ACM SIGPLAN international conference on Functional programming
  • Year:
  • 2007

Quantified Score

Hi-index 0.02

Visualization

Abstract

Designing debugging tools for lazy functional programming languages is a complex task which is often solved by expensive tracing of lazy computations. We present a new approach in which the information collected as a trace is reduced considerably (kilobytes instead of megabytes). The idea is to collect a kind of step information for a call-by-value interpreter, which can then efficiently reconstruct the computation for debugging/viewing tools, like declarative debugging. We show the correctness of the approach, discuss a proof-of-concept implementation with a declarative debugger as back end and present some benchmarks comparing our new approach with the Haskell debugger Hat.