📅  最后修改于: 2023-12-03 15:15:28.540000             🧑  作者: Mango
Haskell 是一种函数式编程语言,其核心概念是函数。Haskell 函数使用一种纯函数的方式进行计算,即对于相同的输入,函数总是返回相同的输出,不产生任何副作用。这种纯粹性质使得 Haskell 函数易于理解、测试和使用。
以 add
函数为例,它接受两个整数作为输入并返回它们的和:
add :: Int -> Int -> Int
add x y = x + y
在上面的例子中,add
函数的类型签名表示输入两个 Int
类型的参数,并返回一个 Int
类型的结果。函数体中使用了模式匹配,简单地将两个输入参数相加并返回结果。
要调用 Haskell 函数,只需要把函数名和参数用空格分隔,并把它们放在一对括号中:
result = add 10 20
上面的例子中,我们把 10
和 20
作为参数传递给 add
函数,并将结果保存在 result
变量中。
在 Haskell 中,函数可以作为参数传递给其他函数,也可以作为返回值返回。
applyTwice :: (a -> a) -> a -> a
applyTwice f x = f (f x)
applyTwice
函数接受一个函数 f
和一个参数 x
,然后将 f
应用到 x
上两次。
multiplyBy :: Int -> (Int -> Int)
multiplyBy x = (\y -> x * y)
multiplyBy
函数接受一个整数 x
,然后返回一个函数,该函数将输入的参数与 x
相乘。
下面是一些常见的 Haskell 函数示例:
factorial :: Integer -> Integer
factorial 0 = 1
factorial n = n * factorial (n - 1)
isPrime :: Int -> Bool
isPrime n
| n <= 1 = False
| otherwise = not $ any (\x -> n `mod` x == 0) [2..sqrtN]
where sqrtN = floor $ sqrt $ fromIntegral n
Haskell 是一种以函数为核心的语言,函数定义简洁清晰,函数应用灵活高效。使用 Haskell 函数可以编写出安全、可靠且易于维护的程序。