
13 Jan
2008
13 Jan
'08
6:46 p.m.
That eta-expansion desugaring would lose sharing. Offhand, I don't know of
a desugaring that would do the trick and preserve sharing. Any ideas? -
Conal
On Jan 13, 2008 3:12 PM, Neil Mitchell
Hi,
It's nice to write functions in point free style:
f = sort . nub
But sometimes I have to add an extra case, on a certain value:
f [] = [1] f = sort . nub
But now these equations have different arities, and its rejected by Haskell. Why does this not simply desugar to:
f [] = [1] f x = (sort . nub) x
i.e. lift the arities to the longest argument list.
Is there a reason this isn't done?
Thanks
Neil _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe