Plaster
New
List
Login
text
default
anonymous
2021.06.29 01:55:38
CL-USER> (defclass positive-number () ((n :accessor n :initarg :n))) #<STANDARD-CLASS COMMON-LISP-USER::POSITIVE-NUMBER> CL-USER> (defclass even-number () ((n :accessor n :initarg :n))) #<STANDARD-CLASS COMMON-LISP-USER::EVEN-NUMBER> CL-USER> (defmethod increment ((n positive-number)) (format t "I'm positive-number")) #<STANDARD-METHOD COMMON-LISP-USER::INCREMENT (POSITIVE-NUMBER) {100D5C12A3}> CL-USER> (defmethod increment ((n even-number)) (format t "I'm even-number")) #<STANDARD-METHOD COMMON-LISP-USER::INCREMENT (EVEN-NUMBER) {100D613823}> CL-USER> (defclass positive-even-number (positive-number even-number) ((n :accessor n :initarg :n))) #<STANDARD-CLASS COMMON-LISP-USER::POSITIVE-EVEN-NUMBER> CL-USER> (make-instance 'positive-even-number) #<POSITIVE-EVEN-NUMBER {100E1AEEC3}> CL-USER> (increment *) I'm positive-number NIL CL-USER> (defclass positive-even-number (even-number positive-number) ((n :accessor n :initarg :n))) #<STANDARD-CLASS COMMON-LISP-USER::POSITIVE-EVEN-NUMBER> CL-USER> (make-instance 'positive-even-number) #<POSITIVE-EVEN-NUMBER {100E4E6B43}> CL-USER> (increment *) I'm even-number NIL CL-USER>
Raw
Annotate
Repaste
Edit