Safe Haskell | None |
---|---|

Language | Haskell2010 |

Create clusters of non-overlapping things.

# Documentation

cluster :: (a -> NonEmpty C) -> [a] -> [NonEmpty a] Source #

Given a function `f :: a -> NonEmpty C`

which returns a non-empty list of
characteristics `C`

of `a`

, partition a list of `a`

s into groups
such that each element in a group shares at least one characteristic
with at least one other element of the group.