There's a long-known technique in functional languages
        [x1,...,xn]     => \tail -> x1:...xn:tail
        xs ++ ys        => f . g
        xs              => f []

A correspondent mentioned to me that he couldn't find a reference
to the idea (which I gather he had independently rediscovered).
I know I've read about it somewhere.  Can anyone provide a reference?

Haskell-Cafe mailing list

Reply via email to