組み合わせ(Haskell) ref: http://qiita.com/items/c9b9b9ba263c06b0680f