谁能解释这个Haskell函数?

时间:2015-07-29 13:45:06

标签: haskell

Haskell功能

map

完全相同
  struct MyStruct
    {
        unsigned char Filler[64*1024];
        unsigned int  MyMemberPast64KB;
    };

   struct MyStruct *pStruct=NULL;
   pStruct->MyMemberPast64KB = 2;

但我不明白为什么:-( 谁可以解释一下? 很多!

1 个答案:

答案 0 :(得分:14)

好的,我们有

foo = zipWith ($) . repeat

相同
foo f = zipWith ($) (repeat f)

repeat f生成f的无限副本列表。然后zipWith使用($)运算符将[{1}}]列表的无限副本的每个元素应用于传入列表的每个元素。这是f的作用。