EDUCATIONAL PEARL: ‘Proof-directed debugging’ revisited for a first-order version

  • Authors:
  • Kwangkeun Yi

  • Affiliations:
  • School of Computer Science and Engineering, Seoul National University, Seoul, Korea (e-mail: kwang@ropas.snu.ac.kr)

  • Venue:
  • Journal of Functional Programming
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

Some 10 years ago, Harper illustrated the powerful method of proof-directed debugging for developing programs with an article in this journal. Unfortunately, his example uses both higher-order functions and continuation-passing style, which is too difficult for students in an introductory programming course. In this pearl, we present a first-order version of Harper's example and demonstrate that it is easy to transform the final version into an efficient state machine. Our new version convinces students that the approach is useful, even essential, in developing both correct and efficient programs.