Calculating functional programs

  • Authors:
  • Jeremy Gibbons

  • Affiliations:
  • Computing Laboratory, University of Oxford

  • Venue:
  • Algebraic and coalgebraic methods in the mathematics of program construction
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

Functional programs are merely equations; they may be manipulated by straightforward equational reasoning. In particular, one can use this style of reasoning to calculate programs, in the same way that one calculates numeric values in arithmetic. Many useful theorems for such reasoning derive from an algebraic view of programs, built around datatypes and their operations. Traditional algebraic methods concentrate on initial algebras, constructors, and values; dual co-algebraic methods concentrate on final co-algebras, destructors, and processes. Both methods are elegant and powerful; they deserve to be combined.