The denotational semantics of the untyped lambda-calculus is a well developed field built around the concept of solvable terms, which are elegantly characterized in many different ways. In particular, unsolvable terms provide a consistent notion of meaningless term. The semantics of the untyped call-by-value lambda-calculus (CbV) is instead still in its infancy, because of some inherent difficulties but also because CbV solvable terms are less studied and understood than in call-by-name. On the one hand, we show that a carefully crafted presentation of CbV allows us to recover many of the properties that solvability has in call-by-name, in particular qualitative and quantitative characterizations via multi types. On the other hand, we stress that, in CbV, solvability plays a different role: identifying unsolvable terms as meaningless induces an inconsistent theory.
翻译:未类型羊羔计算法(CbV)的解记语义是一个围绕可溶性术语概念的完善的字段,它以多种不同方式的优雅特征为特征。 特别是, 无法解开的术语提供了一个无意义术语的一致概念。 非类型调用量的羊羔计算法(CbV)的语义其实还是处于初级阶段, 这是因为存在一些内在的困难, 但也因为CbV可溶性术语的研究和理解程度低于调用名。 一方面, 我们显示, 仔细设计的 CbV 演示让我们能够从调用名中找到许多可溶性属性, 特别是通过多种类型的定性和定量定性特征。 另一方面, 我们强调, 在 CbV 中, 溶性具有不同的作用: 识别不可溶性术语, 是毫无意义的引出不一致的理论 。