Parameter-passing mechanisms and nondeterminism

Parameter-passing mechanisms and nondeterminism
复制标题

参数传递机制和不确定性

DOI:
10.1145/800105.803420
复制
发表时间:
1977
期刊:
--
影响因子:
--
通讯作者:
E. Ashcroft
E. Ashcroft
中科院分区:
--
文献类型:
--
作者:
M. Hennessy;E. Ashcroft

文献摘要

被引文献

相似文献

为允许各种类型的参数传递机制的递归定义定义适当的语义的问题已经在文献中产生了相当大的兴趣。(见[B1]、[M4]、[R3]、[V2])例如考虑众所周知的递归定义 F<X,Y&t;&Equil;if X&Equil;0 Then 0 Else F<X−1,F<X,Y&>t; 被解释为非负整数的平坦CPO上的不动点方程,它有最小解 F(x,y)=0,如果x&Equil;m表示任意非负整数m&Equil;@否则(“@”表示未定义) 如果使用按名称调用(或从外向内)求值机制,则这也与计算函数一致。但是,如果使用按值调用(或由内向外)求值机制,则计算函数为 如果x&Equil;0,则Fv(x,y)&Equil;0;否则@ 在[Vl]中得出的结论是,按价值计算的评估机制是不正确的,不应加以考虑。
The problem of defining an adequate semantics for recursive definitions which allow various types of parameter-passing mechanisms has generated a considerable amount of interest in the literature. (See [B1], [M4], [R3], [V2]) Consider for example the well-known recursive definition F <X, Y> <&equil; IF X&equil;0 THEN 0 ELSE F<X−1,F<X, Y>>. Interpreted as a fixpoint equation over the flat cpo of non-negative integers it has as its least solution f(x, y) = 0 if x&equil;m for any non-negative integer m &equil; @@@@ otherwise (“@@@@” means undefined) This also happens to coincide with the computed function if a call-by-name (or outside-in) evaluation mechanism is used. However if a call-by-value (or inside-out) evaluation mechanism is used the computed function is fv (x, y) &equil; 0 if x&equil;0 &equil; @@@@ otherwise In [Vl] the conclusion is drawn that the call-by-value evaluation mechanism is incorrect and should not be considered.