[Date Prev] [Date Next] [Thread Prev] [Thread Next] Date Index Thread Index Search archive:
Date:Mon Mar 3 23:16:27 2003 
Subject:Re: sockets 
From:A . Sloman 
Volume-ID:1030303.03 

Matthias,
Thanks for your rapid response.

> Thanks for your message and for posting it.  The quick version, however,
> did not work for me (I had tried something like that at some earlier
> point, but to be sure I tried it again), I got the following error:
>
> ;;; MISHAP - DECLARING PROTECTED IDENTIFIER AS DYNAMIC LOCAL
> ;;; INVOLVING:  mishap

Sorry: that was me being forgetful. The system procedure mishap is not
user-defineable. Rather, it calls a procedure prmishap, with the same
arguments, which is user-definable.

The default value of prmishap is usually sysprmishap, which merely
prints the standard error message.

If prmishap exits normally then mishap aborts the current procedure,
and interrupts. But that is prevented if prmishap uses chainto, or
exitto, etc.

(That's how things used to be. There is now a more general mechanism
described in REF exception, on top of which all that is now built, but I
have never studied or usd it!).

> Maybe I need to set a compile option to get passed it?  In this case, if I
> could get away with redefining the mishap function, I'd be more than happy
> (although I would prefer a cleaner solution that would allow me to set the
> appropriate bit).  Anyway, I'll keep trying (once this problem is
> resolved, I think I should have a complete "grid computing" server for
> simworld).

Just try redefining prmishap. You can, for exmaple use that trick to
alter the behaviour of "+" so that "one" + "two" evaluates to "three"
instead of producing a mishap!

Aaron