0

可能重复:
Haskell函数名中'的含义?
Haskell 标识符中的撇号

我正在按照自己的方式工作,并尽我所能在 Clojure 中实现它虽然我不认识任何 Gofer(或 Haskell),但我在进行的过程中已经足够了解了。但是,我似乎找不到任何地方可以解释 inp 之后的单引号和双单引号应该起到什么作用。

seq :: Parser a -> Parser b -> Parser (a,b)
p `seq` q = \inp -> [((v,w),inp'') | (v,inp') <- p inp
     , (w,inp'') <- q inp']

帮助将不胜感激。

4

1 回答 1

0

(复制自 Don 对上一个问题的回答)


撇号只是名称的一部分。它是 Haskell 中采用的命名约定(习语)。

Haskell 中的约定是,就像在数学中一样,变量名称上的撇号表示与先前变量有某种关联或相似的变量。

一个例子:

let x  = 1
    x' = x * 2
in x'

x'与 相关x,我们用撇号表示。

于 2012-06-26T08:33:21.603 回答