main-porgram


x=1:y=2:z=7;

CALL SUB(x, x, x+y, z)

print z;

sub-program

SUB(a, b, c, d)

b=a+a;
d=A+c;

return;


위의 함수에서 call by name을 쓰면 z의 값이 6 call by reference를 쓰면 5가 되는데 그 이유를 알고 싶습니다.