功能性程序员用"道德"来表示什么?

Chr*_*tin 12 functional-programming terminology

我注意到"道德"这个词不断出现在函数式编程语境中.几个例子:

我不熟悉这个词的这些用法.我可以大多推断他们想说的是什么,但我们能否更准确地澄清它的含义?

(交叉发布英语和用法)

lar*_*srh 7

(形式化)逻辑中的"道德等同"一词,以及编程中的"道德等同"一词与道德诉求无关(如道德或哲学问题).它正在选择"道德"一词,但意味着不同的东西.它通常被认为是"P持有,但仅在某些条件下".如果这些条件没有教育价值,微不足道,技术性和/或无聊,则通常会被忽略.因此,关于"道德对等"的链接文章没有任何关系 - 这里没有涉及价值判断.

我不知道很多关于Purescript,但方式我理解你所提到的声明"也可以达到同样的事情AffErrorT (ContT Unit (Eff e)) a."

再举一个例子:假设您有两个函数,并且您只对其域的特定(可能是大的)子集感兴趣.我们还要说这两个函数在这些域上是一致的,即对于所有x∈dom,f(x)= g(x).但是为了这个例子,也许他们在0上做了一些不同的事情,但是你不会将0传递给他们(因为0违反了一些假设).人们可以合理地说f和g"在道德上是等价的".

特别是在逻辑社区中,还存在"道德"的其他用法,例如在"证据在道德上有问题"这一短语中,这意味着作者认为证据是草率的,并且它可能有间隙,但在技术上可以修复.在特定情况下,即执行有关可能不终止程序的证据,您提到的论文给出了这样的理由,这在"快速和宽松的推理在道德上是正确的"标题中得到了回应.