Как удалить вложенный список (списков)? - PullRequest
1 голос
/ 27 октября 2019

Я хотел бы удалить вложенный список из списка списков. Я довольно новичок в Хаскеле и нашел это трудным.

Например

[[a],[b],[c]] --> [a,b,c] 

1 Ответ

5 голосов
/ 27 октября 2019

Вы, вероятно, ищете функцию concat :: Foldable f => f [a] -> [a]. Это может принять Foldable тип [a] с и вернуть [a] в результате. Поскольку список относится к типу Foldable, это означает, что concat может быть " special " - [[a]] -> [a]. Таким образом, он объединит подсписки вместе в список.

Например:

Prelude> concat [[1],[2],[3]]
[1,2,3]

Это может работать и для других типов Foldable, таких как Maybe, Tree,и т.д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...