Haskell,一直在理解类型同义词

Haskell,一直在理解类型同义词,haskell,Haskell,从LYAH的书中,参数化类型同义词: 我会理解: type MyName = String 但这个例子我不明白: type IntMap v = Map Int v -- let alone it can be shortened “Map”是函数,不是类型,对吗?这让我在书中不断重复。接下来:Map需要一个函数和一个列表才能工作,对吗?如果是,并且“v”是列表,“Int”是什么?是类型的名称。它是一个函数,将T类型的值映射到K类型的值。因此IntMap是Map的类型,它具有Int键和v值。

从LYAH的书中,参数化类型同义词: 我会理解:

type MyName = String
但这个例子我不明白:

type IntMap v = Map Int v -- let alone it can be shortened
“Map”是函数,不是类型,对吗?这让我在书中不断重复。接下来:Map需要一个函数和一个列表才能工作,对吗?如果是,并且“v”是列表,“Int”是什么?

是类型的名称。它是一个函数,将
T
类型的值映射到
K
类型的值。因此
IntMap
Map
的类型,它具有
Int
键和
v
值。在某些语言中,地图也被称为字典。它们由哈希表、平衡树或其他更奇特的数据结构实现

不幸的是,还有
map
函数。他们做同样的事情,只是在不同的环境下
map
通过对输入值应用函数来转换输入值,而
map
将输入键转换为输出值。

是类型的名称。它是一个函数,将
T
类型的值映射到
K
类型的值。因此
IntMap
Map
的类型,它具有
Int
键和
v
值。在某些语言中,地图也被称为字典。它们由哈希表、平衡树或其他更奇特的数据结构实现


不幸的是,还有
map
函数。他们做同样的事情,只是在不同的环境下
map
通过对输入值应用函数对其进行转换,而
map
将输入键转换为输出值。

有一种类型名为
map
(大写字母“M”)。还有一个名为
map
(带有小写字母“M”)的函数。除了有类似的名字之外,它们是不相关的。尽量不要把他们弄糊涂

有一种类型名为
Map
(大写字母“M”)。还有一个名为
map
(带有小写字母“M”)的函数。除了有类似的名字之外,它们是不相关的。尽量不要把他们弄糊涂

这是一张
地图
,这是一张
地图
。这是一个函数,这是一种类型。以大写字母开头的不是函数。这是一个
map
,这是一个
map
。这是一个函数,这是一种类型。以大写字母开头的东西不是函数。附录:
Map
是Haskell对其他一些语言称为字典的称呼。附录:
Map
是Haskell对其他一些语言称为字典的称呼。