sicp exercises
選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

754B

when attempting to compute square roots using the new new-if procedure (which acts as if however is not a special form), all three of the arguments to new-if must be fully evaluated before the new-if can return a value. this is in contrast to the special form if which only ever evaluates one of the second and third arguments, conditional on the first argument.

in this case, even if the current guess is good enough (indicating that the second argument of the new-if should be returned) the procedure is still required to evaluate the third argument, which contains a recursive call.

as such, using the non-special form new-if will never return a value, as it has no way of stopping evaluation once a good enough answer has been found.