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

Met*_*too 0 lambda haskell lambda-calculus

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

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

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

jto*_*bin 6

一种类型Int -> (Char -> Char) -> Int意味着函数接受一个Int和一个类型的函数Char -> Char作为输入,并输出一个Int.

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

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

*Main Data.Char> meetoosFunction 1 toUpper
42
Run Code Online (Sandbox Code Playgroud)