RosettaCodeData/Task/Call-an-object-method/XLISP/call-an-object-method.l

24 lines
591 B
Common Lisp

(DEFINE-CLASS MY-CLASS)
(DEFINE-CLASS-METHOD (MY-CLASS 'DO-SOMETHING-WITH SOME-PARAMETER)
(DISPLAY "I am the class -- ")
(DISPLAY SELF)
(NEWLINE)
(DISPLAY "You sent me the parameter ")
(DISPLAY SOME-PARAMETER)
(NEWLINE))
(DEFINE-METHOD (MY-CLASS 'DO-SOMETHING-WITH SOME-PARAMETER)
(DISPLAY "I am an instance of the class -- ")
(DISPLAY SELF)
(NEWLINE)
(DISPLAY "You sent me the parameter ")
(DISPLAY SOME-PARAMETER)
(NEWLINE))
(MY-CLASS 'DO-SOMETHING-WITH 'FOO)
(DEFINE MY-INSTANCE (MY-CLASS 'NEW))
(MY-INSTANCE 'DO-SOMETHING-WITH 'BAR)