- (define-method (name params ...) body ...)syntax
Each parameter in params should be either a single identifier or a list of the form (param type) where param is the parameter name and type is a predicate which returns true if it's argument is of the correct type. Parameters without a predicate will always match. If multiple methods satisfy the arguments, the most recent method will be used. The special form (call-next-method) can be invoked to call the next most recent method with the same arguments.