紙媒体で管理するとなくなりがちなのでブログで進捗などを管理することにしました
※殆どの記事は自分自身のためだけにかいています.他人に見せられるレベルには至っていません...

【Haskell】リスト内包表記

-- 1-10の整数で3倍したものが15を越す整数を3倍したもののリストを得る
>[x*3 | x <- [1..10], x*3 > 15]
[19,21,24,27,30]

-- 50-100までの整数のうち7で割ったあまりが3である全ての整数のリストを得る
> [x | x <- [50..100], x `mod` 7 == 3]
[52,59,66,73,80,87,94]

xsがxを束縛し, 述語oddにより奇数のみとなる.
出力xが10より小さければ"BOOM!"となりそうでなければ"BANG!"となる.

boomBangs xs = [if x < 10 then "BOOM!" else "BANG!" | x <- xs, odd x]