Christian.Maeder at dfki.de
Thu Feb 26 05:36:05 EST 2009
browsing through the sources of Data.List I discovered "select", which
is only used for the implementation of partition and not exported.
Can someone explain, why the irrefutable pattern "~" is used? Both
components are used in both branches.
select :: (a -> Bool) -> a -> ([a], [a]) -> ([a], [a])
select p x ~(ts,fs) | p x = (x:ts,fs)
| otherwise = (ts, x:fs)
Why is it not just in where-clause? Doesn't
"INLINE partition" work then?
More information about the Libraries