[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 ;-)