(function(x:< _))= x和(function(x:_))= x之间的区别是什么?

时间:2016-04-07 11:17:05

标签: haskell

符号x:<_中使用的符号少于什么? 我知道(function (x :< xs))=x意味着一个函数,它接受一个字符串并将字符串的头部作为输出。然后我想这个函数中的x:_x:xs是可以互换的,但我不熟悉符号&lt;在这个表达式中。

1 个答案:

答案 0 :(得分:4)

:<只是某种类型的构造函数,:用于列表,例如。

data Stream a = a :< (Stream a)

在这种情况下,您可以使用函数将流中的第一项作为

streamHead :: Stream a -> a
streamHead (a :< _) = a