[slime-devel] Macroexpand in "wrong" package?

Alain.Picard at memetrics.com Alain.Picard at memetrics.com
Thu Feb 26 00:11:10 UTC 2004


I'm using latest CVS slime + Lispworks on Linux.

Even after doing a SLIME-REPL-SET-PACKAGE to the correct
package, macroexpanding a form produces an expansion
which is being printed from the CL-USER package; e.g.

C-c <RET> with point at start of


(define-action-button modify-traffic-button
    :display-name "Modify Rates"
    :operation    modify-traffic-op)

Yields this:

(XOS::DEFINE-ACTION-BUTTON-WIDGET XOS::MODIFY-TRAFFIC-BUTTON
                                  "Modify Rates"
                                  XOS::MODIFY-TRAFFIC-OP
                                  T
                                  NIL
                                  (LAMBDA
                                   (XOS::OPERAND)
                                   (XOS::INVOKE-OPERATION-SCRIPT
                                    'XOS::MODIFY-TRAFFIC-OP
                                    XOS::OPERAND
                                    NIL)))

I _know_ I'm in the darn XOS package already, so I'd prefer
to see the expansion you get if you type

(pprint (macroexpand '(define-action-button modify-traffic-button
                     :display-name "Modify Rates"
                     :operation    modify-traffic-op)))

in the REPL; namely:

(PROGN
  (WHEN (GET 'MODIFY-TRAFFIC-BUTTON 'HTML-WIDGET-FACTORY)
    (CLEAR-EXISTING-WIDGETS 'MODIFY-TRAFFIC-BUTTON))
  (SETF (GET 'MODIFY-TRAFFIC-BUTTON 'HTML-WIDGET-FACTORY)
        (LAMBDA ()
          (MAKE-INSTANCE 'ACTION-BUTTON-WIDGET
                         :NAME
                         "Modify Rates"
                         :OPERATION
                         'MODIFY-TRAFFIC-OP
                         :DISABLED-MESSAGE
                         (CANONICALIZE-TO-FUNCTION NIL)
                         :ENABLED-P
                         (CANONICALIZE-TO-FUNCTION T)
                         :JSCRIPT-CODE
                         (LAMBDA (OPERAND)
                           (INVOKE-OPERATION-SCRIPT 'MODIFY-TRAFFIC-OP
                                                    OPERAND
                                                    NIL)))))
  'MODIFY-TRAFFIC-BUTTON)


Any way to get this behaviour?  




More information about the slime-devel mailing list