Unique-0.3: It provides the functionality like unix "uniq" utility

Safe HaskellSafe-Inferred



Library provides functions to find unique and duplicate elements in the list. Unlike Data.List.Unique this one uses Data.Map.Strict for calculations. So it's much faster and it uses less memory.



repeated :: Ord a => [a] -> [a]Source

repeated finds only the elements that are present more than once in the list. Example:

repeated foo bar == o

repeatedBy :: Ord a => (Int -> Bool) -> [a] -> [a]Source

The repeatedBy function behaves just like repeated, except it uses a user-supplied equality predicate.

repeatedBy (>2) This is the test line == eist

unique :: Ord a => [a] -> [a]Source

unique gets only unique elements, that do not have duplicates. It sorts them. Example:

unique foo bar == abfr

count :: Ord a => [a] -> [(a, Int)]Source

count of each element in the list, it sorts by keys (elements). Example:

count foo bar == [(' ',1),(a,1),(b,1),(f,1),(o,2),(r,1)]

count_ :: Ord a => [a] -> [(a, Int)]Source

count_ of each elements in the list, it sorts by their number. Example:

count_ foo bar == [(' ',1),(a,1),(b,1),(f,1),(r,1),(o,2)]