“liftM”的名字是不是受到数学中的lifts的启发?

Aph*_*hyd 7 haskell functional-programming terminology category-theory

我是一名数学博士生,辅修 CS,目前正在 Haskell 上课。我们刚刚了解了liftM.

这些概念看起来很相似,但我一直无法确切地弄清楚如何liftM将其视为类别理论意义上的提升(我对类别理论知之甚少,并在拓扑课程中介绍了提升)。

Dan*_*ner 4

鉴于缺乏活动——并且缺乏明显的联系——我认为可以肯定地说,它liftM没有被命名是因为它与拓扑和范畴论升力的联系。

相反,我认为“提升”一词通常意味着从一个推理领域到另一个推理领域的任何转变,正是这种“提升”的感觉才是该名称的历史原因liftM。具体来说:liftM转换一个纯函数,将其“提升”到特定单子的域中。