LINUX.ORG.RU

История изменений

Исправление Jini, (текущая версия) :

Например, так?

(deftype type-ab (type-a type-b)
  (let ((predicate (gensym)))
    (setf (symbol-function predicate)
          (lambda (value)
            (and (typep (slot-value value 'a) type-a)
                 (typep (slot-value value 'b) type-b))))
    `(satisfies ,predicate)))

Исходная версия Jini, :

Например, так?

(deftype type-ab (type-a type-b)
  (let ((predicate (gensym)))
    (setf (symbol-function predicate)
          (lambda (value)
            (and (typep (slot-value value 'a) type-a)
                 (typep (slot-value value 'b) type-b))))
    `(satisfies ,predicate)))