packages feed

alea-0.3.3.0: src/Alea/List.hs

module Alea.List where

-- Split a list into a list of lists
-- ex. split ',' "ab,cd,ef" == ["ab","cd","ef"]
split :: (Eq a) => a -> [a] -> [[a]]
split _ [] = [[]]
split delim (c:cs)
  | c == delim = [] : rest
  | otherwise = (c : head rest) : tail rest
  where rest = split delim cs