首页 > 解决方案 > Haskell::.是什么意思?

问题描述

一个由 cons 组成的符号 (:.),后跟一个点。

取自这里:

-- The custom list type
data List t =
  Nil
  | t :. List t
  deriving (Eq, Ord)

-- Right-associative
infixr 5 :.

取自这里:https ://github.com/tonymorris/fp-course

标签: haskellcons

解决方案


简而言之:代码构造了一个列表的替代版本,并且(:.)是两个数据构造函数之一。

那么它是数据类型的数据构造函数。List t例如标准列表[a]有两个数据构造函数[](:)这里的代码引入了一个新的数据构造函数(:.),但它的作用与标准列表的“缺点”完全相同(:)

所以代码将其定义为:

data List t = Nil | (:.) t (List t) deriving (Eq, Ord)

和任何数据构造函数一样,我们可以对其进行模式匹配、构造新列表等。


推荐阅读