Я новичок в Haskell и пытаюсь написать простую функцию. Я хотел бы сжать каждый элемент по его предстоящей частоте.
Например, введите: "aabbcca"
и я хотел бы получить результат
[('a',2), ('b',2), ('c',2), ('a',1)]
Мой код теперь выглядит следующим образом:
import Data.List
compress :: String -> [(Char, Int)]
compress n = [ (x,y) | x:xs <- group n, y <- ? ]
I'mзастрял и не знаю, как мне считать элементы. Любой совет?