今天下午我正在寫一些Haskell,我有一個必須滿足的條件列表。如果它們都是真的,我想返回true,如果其中一個是false,則返回false。Haskell:檢查是否所有條件都是真的。如果它們返回true否則爲false
我有一個方法正在工作,但我只是想知道是否有更好的方法來實現它的可讀性/效率。
這裏是我有:作爲
checkMatch :: Person -> Person -> Bool
checkMatch seeker candidate
| gender candidate == preferedGender seeker
&& gender seeker == preferedGender candidate
&& minAcceptableAge seeker <= age candidate
&& maxAcceptableAge seeker >= age candidate
&& minAcceptableAge candidate <= age seeker
&& maxAcceptableAge candidate >= age seeker = True
| otherwise = False
性別定義:
data Gender = Male | Female (Eq)
所以我只是對準& &的和|的,使這個看起來好一點,但我覺得必須有更好的方式,但似乎無法提出任何搜索Google的方法。
感謝先進!
BTW,[它_preferred _](HTTP ://en.wiktionary.org/wiki/prefered)。 – leftaroundabout