Practice 4.15

(define (try p)
  (if (halt? p p)
      (run-forever)
      'halted))

运行(try try)

  • 假设(try try)可以终止 (halt? try try)为真,进入(run-forever)分支,不能终止,与假设(try try)可以终止矛盾

  • 假设(try try)不能终止 (halt? try try)为假,进入’halted分支,终止,与假设(try try)不能终止矛盾

所以我们不能写出一个可以判断是否终止的过程halt?