Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.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
Functional programming “函数式程序员”是什么意思;道德的;?_Functional Programming_Terminology - Fatal编程技术网

Functional programming “函数式程序员”是什么意思;道德的;?

Functional programming “函数式程序员”是什么意思;道德的;?,functional-programming,terminology,Functional Programming,Terminology,我注意到“道德”这个词在函数式编程环境中不断出现。举几个例子: Purescript文档: 这在道德上等同于error(ContT Unit(Eff e))a 我不熟悉这个词的这些用法。我基本上可以推断出他们想说什么,但我们能更准确地阐明这意味着什么吗 (交叉发布)在(形式化的)逻辑中,以及从广义上讲,在编程中,“道德等价”一词与诉诸道德无关(如在道德或哲学问题中)。它是对“道德”一词的增选,但其含义有所不同。一般认为它的意思是“P保持,但仅在某些附加条件下”。如果这些条件没有教育价值,

我注意到“道德”这个词在函数式编程环境中不断出现。举几个例子:

  • Purescript文档:

    这在道德上等同于
    error(ContT Unit(Eff e))a

我不熟悉这个词的这些用法。我基本上可以推断出他们想说什么,但我们能更准确地阐明这意味着什么吗

(交叉发布)

在(形式化的)逻辑中,以及从广义上讲,在编程中,“道德等价”一词与诉诸道德无关(如在道德或哲学问题中)。它是对“道德”一词的增选,但其含义有所不同。一般认为它的意思是“P保持,但仅在某些附加条件下”。如果这些条件没有教育价值,是琐碎的、技术性的和/或枯燥的,则通常忽略这些条件。因此,有关“道德等值”的链接文章与此无关——这里没有涉及价值判断

我对Purescript了解不多,但是我将您提到的语句解释为“您可以使用
Aff
实现与
error(ContT Unit(Eff e))a
相同的事情”

再举一个例子:假设你有两个函数,你只对它们域的一个特定的子集感兴趣。我们还假设这两个函数在这些域上是一致的,也就是说,对于所有x∈ dom,f(x)=g(x)。但出于示例的考虑,可能他们对0做了一些不同的操作,但您永远不会将0传递给他们(因为0违反了某些假设)。有人可以合理地说f和g“在道德上是等价的”


特别是在逻辑学界,“道德”还有其他用法,例如“证明在道德上是有问题的”,这意味着作者认为证明是草率的,可能有漏洞,但在技术上是可以修正的。在一个特定的案例中,即对潜在的非终止程序进行证明,你提到的论文给出了这样一个理由,这在标题“快速和松散的推理在道德上是正确的”中得到了呼应。

正如Conor McBride在推特上指出的那样,这种用法源于范畴理论社区,这在fp中启发了很多

Eugenia Cheng有一篇很好的论文描述了数学中使用的道德概念


这似乎更像是一个问题。FWIW,只要去掉“道德”这个词,感觉就会保持不变。在我看来,所有这些“道德性”只是一种时尚;参见等等,“道德对等”或多或少可以被认为是鸭子打字所遵循的相同原则。。。如果它走路像鸭子,说话像鸭子,嘎嘎叫像鸭子,那么它一定是鸭子。这是另一种说法,“只要最终结果是一样的(我在给定特定输入的情况下得到相同的输出),我真的不在乎引擎盖下会发生什么。”我投票结束这个问题,因为它是关于英语的,而不是编程——这个术语并不局限于函数式编程。你可能会更幸运。@Bergi正如你在答案中所看到的,道德这个术语在数学/编程中有特定的含义。