有人可以帮我从Wadler的论文“Comprehending Monads”中理解以下定义吗? (摘录自第3.2节/第9页,即“严格性单子(monad)”小节。)



在本文中,我们还没有看到由两条垂直线组成的符号的使用(不确定其被称为什么),因此它毫无用处。
鉴于Wadler继续说“我们将使用[严格]理解来控制惰性程序的评估”,这似乎是一个非常重要的概念。

最佳答案

您描述的符号是“底部”。它来自顺序理论(尤其是晶格理论)。如果存在部分排序集的“底部”元素,则该元素位于所有其他元素之前。在编程语言语义中,它是指比其他任何一个“定义都更少”的值。通常会为每个产生错误或无法终止的计算分配“最低”值,因为试图区分这些条件会极大地削弱数学并使程序分析变得复杂。

为了将事情联系到另一个答案,逻辑“假”值是真值网格的底部元素,而“真”是顶部元素。在古典逻辑中,这是仅有的两种,但是也可以考虑具有无限多个真实性值的逻辑,例如直觉主义和各种形式的建构主义。这些将观念带入了一个截然不同的方向。

10-06 13:29