Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Haskell 哈斯克尔算子解释_Haskell_Syntax - Fatal编程技术网

Haskell 哈斯克尔算子解释

Haskell 哈斯克尔算子解释,haskell,syntax,Haskell,Syntax,我在Haskell中遇到了以下问题:foldl(&&)True[False | p>这是应用于三个参数的foldl函数: (&&) True [False | p>这是应用于三个参数的foldl函数: (&&) True [False | p>请阅读 此:[expr | expr请阅读 这:[expr | exprfoldl运算符通过迭代列表并调用累加器上的二进制运算符和列表中的当前位置来累加值 也就是说,(&&&)意味着我们正在使用AND运算符对真值进行累加 现在是最后一部分。这是一个列表理解

我在Haskell中遇到了以下问题:
foldl(&&)True[False | p>这是应用于三个参数的
foldl
函数:

  • (&&)
  • True

  • [False | p>这是应用于三个参数的
    foldl
    函数:

  • (&&)
  • True
  • [False | p>请阅读

    此:
    [expr | expr请阅读


    这:
    [expr | exprfoldl运算符通过迭代列表并调用累加器上的二进制运算符和列表中的当前位置来累加值

    也就是说,(&&&)意味着我们正在使用AND运算符对真值进行累加


    现在是最后一部分。这是一个列表理解。它类似于你可能在数学课上看到的集合表示法。基本上,我们定义了一个列表,|意味着,124;foldl运算符通过迭代列表并调用累加器上的二进制运算符和列表中的当前位置来累加值

    也就是说,(&&&)意味着我们正在使用AND运算符对真值进行累加


    现在进入最后一部分。这是一个列表理解。它类似于你可能在数学课上看到的集合符号。基本上,我们定义的是一个列表,|的意思是这样的,|那是一个你在哪里看到的?这只是一个写
    False
    的漫长而复杂的方法,因为
    &
    的第一个应用程序将产生一个
    False
    值,该值将防止
    foldl
    需要读取(无限)列表的其余部分(因为
    False&&&u==False
    )。更糟糕的是,它从不终止,因为
    foldl
    必须从“结束”开始请注意,在编程中,将这样的表达式分解为相关的部分是很重要的。这称为解析。在这种情况下,
    这是一个你从哪里看到的?这只是一种编写
    False
    的漫长而复杂的方法,因为
    &
    的第一个应用程序将产生一个
    False
    值,它将防止
    foldl
    需要读取(无限)列表的其余部分(因为
    False&&&&u==False
    )。更糟糕的是,它从不终止,因为
    foldl
    必须从“结束”开始请注意,在编程中,将这样的表达式分解为相关的部分是很重要的。这称为解析。在这种情况下,
    前奏相同。和
    (而不是
    全部
    )对于有限输入列表,但对于包含至少一个
    False
    的无限列表,
    将返回
    False
    ,其中使用
    foldl
    的此版本将永远不会返回。这与
    Prelude.和
    相同(不是
    all
    )对于有限输入列表,但对于包含至少一个
    False
    的无限列表,
    将返回
    False
    ,其中使用
    foldl
    的此版本将永远不会返回。
    foldl (&&) True (repeat False)