haskell:任何人都可以解释下面的algebric数据类型

时间:2016-06-12 08:29:44

标签: haskell functional-programming

任何人都可以解释下面的代数数据类型

data LOS = Cons Student LOS | Empty deriving (Show) 

type Name = String



data Student = Student           
  { firstName :: Name
  , lastName :: Name
  } deriving (Eq, Show)

我发现它混淆了LOS数据类型的构造

1 个答案:

答案 0 :(得分:4)

LOS正在定义学生列表。您有一个空列表(Empty)或Cons,它同时包含值或列表的其余部分。

您可以拥有一个包含元素(Cons s1 Empty)的列表,一个包含两个元素(Cons s1 (Cons s2 Empty))的列表,依此类推。

相关问题