[Haskell] How to zip folds: A library of fold transformers

oleg at pobox.com oleg at pobox.com
Thu Oct 13 22:13:02 EDT 2005

Dylan Thurston wrote:
> > The defining equations are: if flst is a value
> > of a type |FR a|, then
> > 	unFR flst f z = z if flst represents an empty list
> > 	unFR flst f z = f e (unFR flst' f z)
> > 			if flst represents the list with the head 'e'
> > 			and flst' represents the rest of that list
> Presumably you noticed that this is isomorphic to the representation
> of a list in lambda calculus, right?

Sorry I didn't point out the previous discussion and relevant work:


	especially the reference therein:
	  Corrado Boehm and Alessandro Berarducci: Automatic Synthesis of Typed
	  Lambda-Programs on Term Algebras

More information about the Haskell mailing list