小编use*_*437的帖子

Haskell - lambda表达式

我试图了解什么是有用的,以及如何在Haskell中实际使用lambda表达式.我并不真正理解使用lambda表达式优于定义函数的常规方法的优点.例如,我通常会执行以下操作:

let add x y = x+y
Run Code Online (Sandbox Code Playgroud)

我可以简单地打电话

add 5 6
Run Code Online (Sandbox Code Playgroud)

得到11的结果我知道我也可以做以下事情:

let add = \x->(\y-> x+y)
Run Code Online (Sandbox Code Playgroud)

并得到相同的结果.但就像我之前提到的,我不明白使用lambda表达式的目的.另外,我在前奏中键入了以下代码(无名函数?),它给了我一个错误信息.

let \x -> (\y->x+y)

parse error (possibly incorrect indentation or mismatched backets)
Run Code Online (Sandbox Code Playgroud)

先感谢您!

lambda haskell function

9
推荐指数
1
解决办法
1万
查看次数

Haskell - 类型类

我是Haskell的新手,我正在尝试学习类型类的工作原理.我在GHCi编译器中输入以下代码.

let (+) :: Num a => a -> a -> a;
(+) a b = a+b;
Run Code Online (Sandbox Code Playgroud)

代码编译,但每当我调用该函数时,它就会卡住,我必须按ctrl + c来停止进程.

我在这里做错了吗?先感谢您!

haskell symbols function typeclass

2
推荐指数
2
解决办法
152
查看次数

标签 统计

function ×2

haskell ×2

lambda ×1

symbols ×1

typeclass ×1