by
Leonidas Fegaras
,
Tim Sheard
In Conf. Record 23rd ACM SIGPLAN/SIGACT Symp. on Principles of Programming Languages, POPL’96, St. Petersburg Beach
Add To MetaCart
Abstract:
this paper we give numerous examples of why it is truly important to be able to define catamorphisms over datatypes with embedded functions and show how to define functions as catamorphisms even when no right inverse exists by using a trick that invents an approximate inverse instead. In order to ensure soundness of this trick we replace the restriction of the existence of a right inverse with another less demanding restriction and show how the type system can be used to statically enforce this restriction. 2 Structures with Functionals are Useful
Citations
|
603
|
A Formulation of the Simple Theory of Types', The
– Church
- 1940
|
|
338
|
ML for the Working Programmer
– Paulson
- 1991
|
|
250
|
Functional programming with bananas, lenses, envelopes and barbed wire
– Meijer, Fokkinga, et al.
- 1991
|
|
224
|
Theorems for free
– Wadler
- 1989
|
|
214
|
C.: Higher-order abstract syntax
– Pfenning, Elliott
|
|
138
|
Higher-order logic programming
– Miller, Nadathur
|
|
104
|
Elements of Functional Programming
– Reade
- 1993
|
|
104
|
A Fold for All Seasons
– Sheard, Fegaras
- 1993
|
|
100
|
Data structures and program transformation
– Malcolm
- 1990
|
|
72
|
Bananas in space: Extending fold and unfold to exponential types. Pages 324–333 of: Fpca95: Conference on functional programming languages and computer architecture
– Meijer, Hutton
- 1995
|
|
35
|
Homomorphisms and promotability
– Malcolm
- 1989
|
|
25
|
Improving Programs which Recurse over Multiple Inductive Structures
– Fegaras, Sheard, et al.
- 1994
|
|
11
|
Solving optimisation problems with catamorphisms
– Bird, Moor
- 1992
|
|
1
|
Control Structures from Types. Unpublished draft. Available by anonymous ftp from ftp-ala.doc.ic.ac.uk/pub/papers/R.Paterson/folds.dvi
– Paterson
- 1994
|
|
1
|
Control Structures from Types. Submitted to
– Paterson
- 1994
|