[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[no subject]
- To: EB at MIT-AI
- From: Robert W. Kerns <RWK at MIT-MC>
- Date: Fri, 23 Nov 79 07:17:00 GMT
- Cc: BUG-LISP at MIT-MC
- Original-date: 23 November 1979 02:17-EST
From: Date:
Date: Tue, 21 Nov 79 17:48:27 GMT
Original-Date: 11/21/79 13:48:27 EDT
Subject:
From: EB at MIT-AI
To: (BUG LISP) at MIT-AI
THE FOLLOWING FILE:
(EVAL-WHEN (COMPILE)
(DEFUN FOO-HOOK (X)
(COND ((EQ X 'FOO) (NCONS 'FOO-SYM))
(T NIL)))
(TRACE FOO-HOOK)
(PUSH 'FOO-HOOK USERATOMS-HOOKS))
(DEFUN FOO (X) 'FOO)
PRODUCES THE FOLLOWING ERROR IN LISP COMPILER 900:
(COMMENT **ERROR** FOO Atomindex screw in function FOO)
;%%%%%%%% COMPILER ERROR - CALL JONL %%%%%%%%
;BKPT BARF
THE TEST ABOVE WAS PLAYING AROUND WITH USERATOMS-HOOKS,
INTENDING TO EVENTUALLY WRITE A USERATOMS-HOOK THAT PUTS SYMBOLS ON
A CHOICE OF OBARRAYS DEPENDING ON THE FORM OF THE SYMBOL, AND
USEABLE EVEN AT PLACES THAT ARE NOT GETTING EVALUATED (E.G.
IN (DEFUN atom (atom1) ...).
Fixed in the source, and in XCOMPLR on MC.
By the way, I suspect that you don't mean what you actually wrote.
More likely:
(DEFUN FOO-HOOK (X)
(COND ((EQ X 'FOO) '('FOO-SYM))))
Note that the form you return the NCONS of is EVAL'd at load time to
get the final atom.