【发布时间】:2014-09-15 09:50:24
【问题描述】:
假设我有以下代数数据类型:
data Foo = Bar Int | Baz Int | Bippy
我正在编写一个函数,给定一个 Foo,除了 Bippy 之外的任何内容都返回 True。
有没有比对所有数据类型进行模式匹配更简洁的方法来实现这个功能?
f :: Foo -> Bool
f (Bar _) = True
f (Baz _) = True
f Bippy = False
在这个例子中,只用了 3 行代码。但是,如果我有 10 种数据类型呢?
【问题讨论】:
标签: haskell