foldr const
But I can't help feeling that this code is perversely obscure.
Does it have any advantages over the more obvious form suggested below?
[[ headOrSomething = foldr const
headOrSomething1 _ (x:_) = x headOrSomething1 x [] = x
h = headOrSomething -- h = headOrSomething1
test1 = h 0 [1,2,3] == 1 test2 = h 0 [] == 0 test3 = h 0 (repeat 42) == 42 ]]
This suggests, e.g., an alternative coding of Maybe.listToMaybe: [[ altListToMaybe = foldr (const . Just) Nothing ]]
Opinions?
#g
------------ Graham Klyne For email: http://www.ninebynine.org/#Contact
_______________________________________________ Haskell-Cafe mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell-cafe
