找出lambda演算/ haskell类型的一些例子

时间:2013-02-27 01:35:59

标签: haskell lambda lambda-calculus

假设函数将两个不同类型的变量作为输入(例如,一个变量在C语言中为int,一个变量在C语言中为char)并返回{{1}中的一个变量}。

如果此函数编码为Haskell或lambda演算代码,函数的类型将如何?

假设函数的类型为Int。这意味着什么?这是否意味着它接收int变量作为输入并运行Int -> (Char -> Char) -> Int的函数并输出(Char -> Char)变量?

1 个答案:

答案 0 :(得分:6)

Int -> (Char -> Char) -> Int类型意味着该函数接受IntChar -> Char类型的函数作为输入,并输出Int

该功能本身不必实际使用其输入。例如,

meetoosFunction :: Int -> (Char -> Char) -> Int
meetoosFunction _ _ = 42

*Main Data.Char> meetoosFunction 1 toUpper
42