Hi Eric,

Yes, CLG really needs to redefine EXT:INTERACTIVE-EVAL globally.
DEFINE-FWRAPPER is great for this.  Thanks a lot for your suggestion
and and an example of how to use it.

Best,

-cph

> If you really need to redefine an internal function globally, you can
> use CMUCL's fwrappers, a new feature implemented by Gerd Moellman.
> They are documented in the development version of the CMUCL User's
> Manual, which you can obtain in various formats in the snapshots
> directory of the download site.
> 
> ,----
> | (use-package :fwrappers)
> | 
> | (define-fwrapper gdk-flush-fwrapper (form)
> |   (let ((values (multiple-value-list (call-next-function form))))
> |     (print "call gdk flush")
> |     (finish-output)
> |     (values-list values)))
> | 
> | (fwrap 'ext:interactive-eval #'gdk-flush-fwrapper
> |        :type :gdk-flush)
> `----
> 
> -- 
> Eric Marsden                          <URL:http://www.laas.fr/~emarsden/>


Reply via email to