А как? Да скорее всего от расчета диффов не отвертеться. Это немного похоже на SwiftUI (он также считает диффы, только на уровне дерева View, а не на уровне данных). Применяет анимацию и переходы в зависимости от того (удалилась вьюха, вставилась, переместилась). С целях оптимизации сравнивает `@`State. Если они одинаковые, то перерисовку не производит. В Redux / Flux все очень похоже. Просто AppKit недалеко сдвинулся с прошлых времен. Мне вот даже операция move для NSOutlineView не нужна, достаточно delete/ insert.