Haskell中的函数列表

Ale*_*iga 4 haskell list

据说我有相同类型的那些函数并导致Haskell:

add_one :: Integer -> Integer
add_one n = n + 1

multiply_by_five :: Integer -> Integer
multiply_by_five n = n * 5

subtract_four :: Integer -> Integer
subtract_four n = n - 4

add_ten :: Integer -> Integer
add_ten n = n + 10
Run Code Online (Sandbox Code Playgroud)

如何从列表中创建列表,以便将其应用于Integer类型的单个参数,例如:

map ($ single_argument) list_of_functions  
Run Code Online (Sandbox Code Playgroud)

小智 10

使用Haskel构建列表是通过使用(:)和[]列表构造函数完成的,如下所示:

fList :: [Integer -> Integer]
fList = add_one : multiply_by_five : subtract_four : add_ten : []

-- or by using some syntactic sugar
fList' = [add_one, multiply_by_five, subtract_four, add_ten]
Run Code Online (Sandbox Code Playgroud)

然后你可以确实映射应用程序:

map ($ 3) fList
Run Code Online (Sandbox Code Playgroud)