In pure functional programming it is awkward to use a stateful sub-computation in a predominantly stateless computation. The problem is that the state of the subcomputation has to be passed around using ugly plumbing. Classical examples of the plumbing problem are: providing a supply of fresh names, and providing a supply of random numbers. We propose to use (deterministic) inductive definitions rather than recursion equations as a basic paradigm and show how this makes it easier to add the plumbing.
|Title of host publication||Reflections on Type Theory, Lambda Calculus, and the Mind: Essays Dedicated to Henk Barendregt on the Occasion of his 60th Birthday|
|Editors||E. Barendsen, V. Capretta, H. Geuvers, M. Niqui|
|Place of Publication||Nijmegen|
|Number of pages||14|
|Publication status||Published - 17 Dec 2007|