Super Haskell Time

例の課題である。和が6となる4要素のTupleのリストを返す。これを持ってHaskellが強力だというのは若干あれだが、何ともいえない晴れ晴れとした(?)気分になれる。

[(a, b, c, d) | a <- [0..6], b <- [0..6], c <- [0..6], d <- [0..6], a + b + c + d == 6]

何度も言うが、<-は∈と読みましょう。上の式がすばらしく自然に読める。理想的には、[0..]にしたいところだが、それは無理という話で。