gcd call by  value
call by name
是否可以 模拟 不同的 解释器？