(defmethod persistent-data-read (function (data persistent-data) &rest args) (let ((value (apply function (contents data) args))) (if (typep value 'proxy) (maybe-dereference-proxy value) value)))