Functional Programming with Bananas, Lenses, Envelopes and Barbed Wire

Erik Meijer, J. Hughes (Editor), M.M. Fokkinga, Ross Paterson

Research output: Contribution to conferencePaper

  • 287 Citations

Abstract

We develop a calculus for lazy functional programming based on recursion operators associated with data type definitions. For these operators we derive various algebraic laws that are useful in deriving and manipulating programs. We shall show that all example functions in Bird and Wadler's "Introduction to Functional Programming" can be expressed using these operators.
LanguageUndefined
Pages124-144
Number of pages21
DOIs
StatePublished - Aug 1991

Keywords

  • EWI-7281
  • IR-56289

Cite this

Meijer, E., Hughes, J. (Ed.), Fokkinga, M. M., & Paterson, R. (1991). Functional Programming with Bananas, Lenses, Envelopes and Barbed Wire. 124-144. DOI: 10.1007/3540543961_7
Meijer, Erik ; Hughes, J. (Editor) ; Fokkinga, M.M. ; Paterson, Ross. / Functional Programming with Bananas, Lenses, Envelopes and Barbed Wire. 21 p.
@conference{4cec4a43c86444479dc0003182424795,
title = "Functional Programming with Bananas, Lenses, Envelopes and Barbed Wire",
abstract = "We develop a calculus for lazy functional programming based on recursion operators associated with data type definitions. For these operators we derive various algebraic laws that are useful in deriving and manipulating programs. We shall show that all example functions in Bird and Wadler's {"}Introduction to Functional Programming{"} can be expressed using these operators.",
keywords = "EWI-7281, IR-56289",
author = "Erik Meijer and J. Hughes and M.M. Fokkinga and Ross Paterson",
note = "Imported from EWI/DB PMS [db-utwente:inpr:0000003415]",
year = "1991",
month = "8",
doi = "10.1007/3540543961_7",
language = "Undefined",
pages = "124--144",

}

Meijer, E, Hughes, J (ed.), Fokkinga, MM & Paterson, R 1991, 'Functional Programming with Bananas, Lenses, Envelopes and Barbed Wire' pp. 124-144. DOI: 10.1007/3540543961_7

Functional Programming with Bananas, Lenses, Envelopes and Barbed Wire. / Meijer, Erik; Hughes, J. (Editor); Fokkinga, M.M.; Paterson, Ross.

1991. 124-144.

Research output: Contribution to conferencePaper

TY - CONF

T1 - Functional Programming with Bananas, Lenses, Envelopes and Barbed Wire

AU - Meijer,Erik

AU - Fokkinga,M.M.

AU - Paterson,Ross

A2 - Hughes,J.

N1 - Imported from EWI/DB PMS [db-utwente:inpr:0000003415]

PY - 1991/8

Y1 - 1991/8

N2 - We develop a calculus for lazy functional programming based on recursion operators associated with data type definitions. For these operators we derive various algebraic laws that are useful in deriving and manipulating programs. We shall show that all example functions in Bird and Wadler's "Introduction to Functional Programming" can be expressed using these operators.

AB - We develop a calculus for lazy functional programming based on recursion operators associated with data type definitions. For these operators we derive various algebraic laws that are useful in deriving and manipulating programs. We shall show that all example functions in Bird and Wadler's "Introduction to Functional Programming" can be expressed using these operators.

KW - EWI-7281

KW - IR-56289

U2 - 10.1007/3540543961_7

DO - 10.1007/3540543961_7

M3 - Paper

SP - 124

EP - 144

ER -

Meijer E, Hughes J, (ed.), Fokkinga MM, Paterson R. Functional Programming with Bananas, Lenses, Envelopes and Barbed Wire. 1991. Available from, DOI: 10.1007/3540543961_7