Haskell - 函数组合

Haskell - 函数组合 首页 / Haskell入门教程 / Haskell - 函数组合

功能组合是将一个功能的输出用作另一个功能的输入的过程,如果我们学习组成背后的数学会更好,在数学中,组成由 f {g(x)} 表示,其中 g()是一个函数,其输出用作输入另一个功能,即 f()。

看下面的示例代码。在这里,我们使用函数组合来计算输入数字是偶数还是奇数。

eveno::Int -> Bool 
noto ::Bool -> String 

eveno x=if x `rem` 2 == 0 
   then True 
else False 
noto x=if x == True 
   then "This is an even Number" 
else "This is an ODD number" 

main=do 
   putStrLn "Example of Haskell Function composition" 
   print ((noto.eveno)(16))

在这里,在 main 函数中,我们同时调用两个函数 noto 和 eveno ,编译器将首先使用 16 作为参数调用函数" eveno()" ,之后,编译器将 eveno 方法的输出用作 noto()方法的输入。

其输出如下-

链接:https://www.learnfk.comhttps://www.learnfk.com/haskell/haskell-function-composition.html

来源:LearnFk无涯教程网

Example of Haskell Function composition                
"This is an even Number"

由于我们提供数字16作为输入(它是偶数),因此 eveno()函数将返回 true ,这将成为 noto的输入()函数并返回输出:"This is an even Number"。

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

浏览器工作原理与实践 -〔李兵〕

分布式技术原理与算法解析 -〔聂鹏程〕

Web安全攻防实战 -〔王昊天〕

深度学习推荐系统实战 -〔王喆〕

React Hooks 核心原理与实战 -〔王沛〕

数据分析思维课 -〔郭炜〕

eBPF核心技术与实战 -〔倪朋飞〕

徐昊 · TDD项目实战70讲 -〔徐昊〕

Kubernetes入门实战课 -〔罗剑锋〕

好记忆不如烂笔头。留下您的足迹吧 :)