Эта книга у меня есть, надо бы почитать повнимательнее.
Но мне всё равно не ясно. Вот здесь:
## Код:
```
PROCEDURE (t: BTree)Insert(new: TyumsuAbsTree.Tree);
BEGIN
  WHILE t # NIL DO
    WITH new: BTree DO
      IF new.key < t.key THEN
        t.left.Insert(new);
.................................
      END;
    END;
  END;
END Insert;
```

Когда мы дойдем до последней вершины t.left будет NIL, и, соответственно, у него не будет метода Insert. При попытке обратиться к t.left.Insert() будет вызвано исключение. Как делается рекурсия в случае объектов? Про VAR параметр, к сожалению, не совсем понял...