Haskell 元组函数组合

标签 haskell tuples function-composition

我已经从 Richard Bird 的使用 Haskell 的 FP 简介开始学习 Haskell,但我坚持要证明以下几点:

pair (f, g) . h = pair (f . h, g . h)

pair的定义如下:

pair :: (a -> b, a -> c) -> a -> (b, c)
pair (f, g) x = (f x, g x)

有人能指出我正确的方向吗?请记住,我只是在开始。提前致谢!

最佳答案

一种方法是扩展所有定义。请记住 f . g = \x -> f (g x)f a b = ...f a = \b -> ... 相同.

所以您可以尝试扩展 pair 的定义和 .pair (f, g) . h = pair (f . h, g . h)

关于Haskell 元组函数组合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18422310/

相关文章:

haskell - 此代码中的空间泄漏在哪里?

Python 3 : How to compare two tuples and find similar values?

python - 对列表和多次迭代的误解

c# - 用 List<T> 解构

haskell - 为什么具有 `join` 的函数组合可以更改函数输入?

javascript - 如何将普通应用程序转换为管道或组合

haskell - Haskell 示例中的函数组合

haskell - 如何避免类型类实例的二次爆炸?

haskell - 抽象记录还是记录接口(interface)?

haskell - (f .) . 是什么意思? g 在 Haskell 中的意思是?