prelude.ls記事の続き、今回は入れ込んだリストから一個のリストを生成する関数です
実際のところ
多重リストを平坦にするflatten
入れ込んだリストを一本化するflatten。
有名どころのLLなら大抵搭載されてるアレです。
flatten [1, [[2], 3], [4, [[5]]]] #=> [1, 2, 3, 4, 5]
一致しない要素だけ返すdifference
複数のリストを渡し、
最初のリストを基準にして以降のリストに登場しない要素を抽出する関数もあります。
difference [2 3 4 5] [5 2 10] [1] #=> [ 3, 4 ]