関数型プログラミング言語Haskell Part17
レス数が900を超えています。1000を超えると表示できなくなるよ。
0946デフォルトの名無しさん
2012/03/12(月) 20:36:58.76| V2 Int Double String
| V3 String Int Int Int Int Int Int
なんていう型を要素として持つリストがあってさ、
そのリストの中から V3 の値構築子で作ったものだけが欲しい場合、
f :: [T] -> [T]
f = filter g
この関数 g は
g (V3 _ _ _ _ _ _ _) = True
g _ = False
とか case of を使って作る事になるが、アンダーバーが鬱陶しい
同じ(qualified な)名前の値構築子で引数の数(や型)が異なるものなんて無いのだから、
V3 にマッチするかどうか調べるのにアンダーバーすら書きたくないのが本音
でも現状、こうやってアンダーバーを書き連ねるしか方法は無いんだよね
レス数が900を超えています。1000を超えると表示できなくなるよ。