Added an O(n log n) version of nub

The new nub is called nub', and it replaces the old sortNub which was 
not lazy and did not retain the order between the elements.
This commit is contained in:
peter.ljunglof
2012-08-29 21:45:10 +00:00
parent 7ad4616d9c
commit 87260365c7
4 changed files with 14 additions and 11 deletions

View File

@@ -53,7 +53,7 @@ isEpsilon (REConcat []) = True
isEpsilon _ = False
unionRE :: Ord a => [RE a] -> RE a
unionRE = unionOrId . sortNub . concatMap toList
unionRE = unionOrId . nub' . concatMap toList
where
toList (REUnion xs) = xs
toList x = [x]