Haskell 哈斯凯尔,射程向下,无台阶

Haskell 哈斯凯尔,射程向下,无台阶,haskell,range,Haskell,Range,为什么在哈斯克尔的工作范围内没有台阶 [7..1] => [] 但只做这个 [7,6..1] => [7,6,5,4,3,2,1] 在给出提示之前,Haskell无法知道您想要执行步骤-1 在某些情况下,您可能需要一个范围[x..y],其中y1 3.10。算术序列 [……] 算术序列满足以下等式: [……] [e1..e3]=枚举从e1到e3 [……] 6.3.4枚举类 对于Int和Integer类型,枚举函数具有以下含义: [……] 序列enumFromTo e1 e3

为什么在哈斯克尔的工作范围内没有台阶

[7..1] => []
但只做这个

[7,6..1] => [7,6,5,4,3,2,1] 

在给出提示之前,Haskell无法知道您想要执行步骤-1


在某些情况下,您可能需要一个范围
[x..y]
,其中
y
,并且您希望该范围为空。在这些情况下,如果Haskell只是向下一步,这会产生一些微妙的错误。

在没有步骤指示的情况下,Haskell假设它是+1,如果它不适用于给定的参数,则返回一个空列表

必须明确建议+1以外的任何增量;不仅是正整数>1

3.10。算术序列

[……] 算术序列满足以下等式:

  • [……]
  • [e1..e3]=枚举从e1到e3
  • [……]
6.3.4枚举类

对于Int和Integer类型,枚举函数具有以下含义:

  • [……]
  • 序列enumFromTo e1 e3是列表[e1,e1+1,e1+2,…e3]。如果e1>e3,则列表为空
  • [……]