[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:

  http://www.haskell.org/pipermail/haskell-cafe/2005-July/010875.html

  http://pobox.com/~oleg/ftp/Computation/Continuations.html#cdr-fstream
	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