specializers
Specializers are a concept in the Common Lisp Object System (CLOS) that governs how methods are selected for a given set of arguments. A specializer is a designator used in a method definition to specify the criteria that an argument must meet for the method to be considered in the generic function’s dispatch.
In CLOS, a method can specialize on more than just a general class. While a class (or
(defmethod process ((x integer) (y (eql 3))) ...)
(defmethod process ((x (eql 'start)) (y integer)) ...)
(defmethod process ((x number) (y number)) ...)
When a function is called, the system collects all applicable methods whose specializers match the arguments
Specializers thus enable both type-based and value-based dispatch within the same generic function, providing greater precision