Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Haskell 什么';常量和常量的区别是什么?_Haskell - Fatal编程技术网

Haskell 什么';常量和常量的区别是什么?

Haskell 什么';常量和常量的区别是什么?,haskell,Haskell,常量函子似乎有两种实现: 在Control.Applicative中 在Data.Functor.Constant中 为什么两者都存在?我应该使用哪一种?它们确实做了相同的事情。据我所知,大多数人使用Const,因为它较旧(正如巴库留所指出的),位于base中,并且名称较短。例如:lens使用Const。2012年,图书馆邮件列表中至少有一个邮件没有通过,似乎是因为对名称和最合适的模块存在不同意见。第一个邮件似乎包含了更多的“电池”;)这很奇怪Data.Functor.Constant似乎是

常量函子似乎有两种实现:

  • Control.Applicative中

  • Data.Functor.Constant中


为什么两者都存在?我应该使用哪一种?

它们确实做了相同的事情。据我所知,大多数人使用
Const
,因为它较旧(正如巴库留所指出的),位于
base
中,并且名称较短。例如:
lens
使用
Const
。2012年,图书馆邮件列表中至少有一个邮件没有通过,似乎是因为对名称和最合适的模块存在不同意见。

第一个邮件似乎包含了更多的“电池”;)这很奇怪
Data.Functor.Constant
似乎是在2010年发布的,在
Control.Applicationive
之后很久。而且它提供的东西没有现有的那么有用。所以它看起来确实像是
常数ab
是非常无用的…Kmett的a将一些类型从
变形金刚
移动到
,他故意忽略
常数
(我从那次讨论中得到了某种“已经死了!”的感觉。)(公平地说,
lens
实际上提供了一些支持。)