Haskell-chp01
-- 函数名首字母必须小写,可以包含 '来表示该函数严格求值版本(与惰性求值相对) doubleMe x = x + x doubleUs x y = doubleMe x + doubleMe y doubleUs' x y = x * 2 + y * 2 -- 给小于等于100的数乘以2 doubleSmallNumber x = if x > 100 then x else x * 2 -- 上述函数执行结果+1 doubleSmallNumber x = (if x > 100 then x else x * 2) + 1 {-无参函数称为定义或名字,函数定义后再也无法修改其内容, conanO'Brien 与 字符串 "It's a-me, Conan O'Brien!" 等价-} conanO'Brien = "It's a-me, Conan O'Brien!" -- 列表推导式,与数学中集合表达相似 -- 将numbers列表中的数乘以2,并返回新列表 doubleNumbers numbers = [x * 2 | x <- numbers] -- 添加谓词 doubleNumbersPr numbers = [x * 2 | x <- numbers, x * 2 > 20] -- 上述函数的另一个版本 doubleNumbersPr' numbers = [x