嘿,我正在为周五即将到来的函数式编程考试进行复习,我正在完成我们讲师提供的练习。我遇到了一个需要帮助的问题:
6. a) 编写一个函数,将给定的列表 xs 与列表 yss 中的每个列表一起压缩。在定义函数时尽可能使用部分应用程序和 lambda 表达式。b) 编写一个函数,用给定的列表 xs 压缩列表 yss 中的每个列表。在定义函数时尽可能使用部分应用程序和 lambda 表达式。你对这个问题的 a) 部分和 b) 部分的解决方案之间的区别说明了部分应用的函数必须以正确的顺序接受它们的参数。
我目前对(a)的看法是:
zipAll = (\xs (ys:yss) -> [(zip xs ys)] ++ zipAll xs yss)
我知道这不是详尽的,但有人可以给我一些指示吗?