[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

PCL for TI Explorer



tracing the Evaluation of (defmethod quux ((x integer)) x) :

(1 ENTER SET-FUNCTION-NAME: (LAMBDA (X) (DECLARE (CLASS X INTEGER)) (PROGN
X) (BLOCK QUUX X)) (METHOD QUUX (INTEGER)))
(1 EXIT SET-FUNCTION-NAME: (LAMBDA (X) (DECLARE (CLASS X INTEGER)) (PROGN
X) (BLOCK QUUX X)))
(1 ENTER LOAD-DEFMETHOD-INTERNAL: QUUX NIL (INTEGER) (X) NIL NIL NIL
(LAMBDA (X) (DECLARE (CLASS X INTEGER)) (PROGN X) (BLOCK QUUX X))
STANDARD-METHOD)
  (1 ENTER ENSURE-GENERIC-FUNCTION: QUUX :LAMBDA-LIST (X))
    (1 ENTER SET-FUNCTION-NAME: #<DTP-LEXICAL-CLOSURE 65174430> QUUX)
    (1 EXIT SET-FUNCTION-NAME: #<DTP-LEXICAL-CLOSURE 65174430>)
  (1 EXIT ENSURE-GENERIC-FUNCTION: #<DTP-LEXICAL-CLOSURE 65174430>)
  (1 ENTER INSTALL-DISCRIMINATING-FUNCTION: #<DTP-LEXICAL-CLOSURE 65174430>
#<DTP-LEXICAL-CLOSURE 65175235>)
    (1 ENTER SET-FUNCALLABLE-INSTANCE-FUNCTION: #<DTP-LEXICAL-CLOSURE
65174430> #<DTP-LEXICAL-CLOSURE 65175235>)
    (1 EXIT SET-FUNCALLABLE-INSTANCE-FUNCTION: #<DTP-FUNCTION AHO 1446426>)
  (1 EXIT INSTALL-DISCRIMINATING-FUNCTION: #<DTP-LEXICAL-CLOSURE 65175235>)
(1 EXIT LOAD-DEFMETHOD-INTERNAL: NIL)

In ENSURE-GENERIC-FUNCTION, SET-FUNCTION-NAME set the function name of
#<DTP-LEXICAL-CLOSURE 65174430> to QUUX, but after that in
SET-FUNCALLABLE-INSTANCE-FUNCTION,

(setf (lexical-closure-function #<DTP-LEXICAL-CLOSURE 65174430>)
      (lexical-closure-function #<DTP-LEXICAL-CLOSURE 65175235>))

is executed. So SET-FUNCTION-NAME is ineffecitve.

	Haruyuki Kawabe
	Knowledge Systems
	Nihon Unisys, Ltd.
	2-17-51 Akasaka, Minato-ku, 
	Tokyo 107, JAPAN  
	e-mail: kawabe%etl.jp@relay.cs.net