[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
- To: JONL at MIT-MC
- From: George J. Carrette <GJC at MIT-MC>
- Date: Thu, 26 Feb 81 02:42:00 GMT
- Cc: BUG-LISP at MIT-MC
- Original-date: 25 February 1981 21:42-EST
This is indeed what I did. In fact, I defined a macro
(DEF-SUBR-ENTER-POINTS FOOBAR 0 3) which said define subr enter points
for arguments 0 through 3 and automatically set up SOURCE-TRANS.
However, I really WANT to go through the UUO handler.
(1) Save adding extra symbols to the environment, this is an issue,
multiplying the number of symbols by 6. I have MERROR, and MFORMAT,
and MTELL, and TR-FORMAT, and perhaps others in the future.
These are all hairy error or I/O functions, and the overhead of
the UUO handler is trivial.
(2) Better debugging. If you go through the handler then the DEBUG
function can easily do an FRETURN for cases which are
sort-of-recoverable errors. (hackers only).
If I could only keep the compiler from putting an assumption
about the function into the environment (if there were some
user hook to filter those assumptions), then I could win.
Now, I've searched via COMLAP;COMPLR TAGS, and I find only
two places where PUTPROP is done for '*EXPR or '*LEXPR,
one place is in the function COMPILE in COMLAP;COMPLR
and the other is in the function P1 in COMLAP;PHAS1.
If I could put a hook, e.g. call a function PUT-FUN-INFO
instead of PUTPROP, then I could win. How about it?