haskellで「Rubyでどう書く?:連続した数列を範囲形式にまとめたい」をやろうとした。

なんかmaybeモナドっぽさがだせないので中止。

Prelude Maybe> (\x->filter(\(x,y)->if (isNothing x)||(isNothing y) then True else (fromJust x + 1 /= fromJust y ))$zip([Nothing]++(map Just x))((map Just x)++[Nothing]))[1,2,3,5,7,8,9,12,15,16]
[(Nothing,Just 1),(Just 3,Just 5),(Just 5,Just 7),(Just 9,Just 12),(Just 12,Just 15),(Just 16,Nothing)]