(defun cache (object) (and (slot-boundp object 'rucksack) (rucksack object) (rucksack-cache (rucksack object))))