[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[spr8239] package-lock warning messages
;; Date: Thu, 29 April 93, 14:13 PDT
;; From: Jon Degenhardt
;; > Date: Thu, 29 Apr 93
;; > From: Eyvind.Ness@hrp.no
;; > ... What is so strange, in my
;; > opinion, is that you can't *locally* override a cl-symbol within the
;; > body of an FLET or LABELS without getting lots of annoying warning
;; > messages. Note that I'm not making a permanent *change* to the
;; > cl-definition - it's only a *temporary* redefinition of it.
;; I'm curious as to why you want to overide a cl-symbol, globaly or
;; locally. The main reason I've seen to do this is to overcome specific
;; problems porting code written for a different language varient. Is
;; there a general programming situation or style where this is the
;; correct problem solving method?
I warned that I was not interested in discussing the rationale behind
such a functionality, but anyway, let me just tell you what I'm doing,
if that could make you feel better:
I have an eval-server, evaluating random client code. One of the
built-in functions that I want to shadow is CL:BREAK, because this
function normally will require an interactive debugging environment
(which, of course, is non-existent here). My shadow BREAK will print a
warning and return immediately.
Right now I have to make do with wrapping a general HANDLER-BIND around
the client code to be evaluated. Conditions raised by CL:BREAK will be
trapped, but I'd rather complete the evaluation with my own version of
CL:BREAK. I haven't carefully studied the contents of the condition
object raised by CL:BREAK, but my experience so far indicates that there
is a general lack of portability in this area - restarts provided by one
Lisp implementation is called something different (or doesn't even
exist) in other implementations. It's so much simpler to just locally
shadow a function binding, and I really cannot see why Franz makes such
a fuss about preventing programmers to do it.
Eyvind Ness, Research Scientist, OECD Halden Reactor Project, Norway.
~/.signature: No such file or directory ;-)