6/2/71   - JONL -
	THERE IS A NEW NLISP WHICH SHOULD BECOME THE SYSTEM LISP
WITHIN A FEW SHORT WEEKS.  NOTE WELL: ITEMS 1-4 BELOW DESCRIBE
CHANGES THAT ARE AT VARIANCE WITH THE DOCUMENTATION OF THE PREVIOUS
NLISP NOTE.

1)  *** DELETED ***

2) SIGNP IS NOW A FSUBR.  THE FIRST ITEM IN THE ARGLIST IS AN
INDICATOR FOR COMPARISON TO ZERO, E.G., (SIGNP LE N) IS NON-NIL
IF AND ONLY IF THE VALUE OF N IS A NUMBER LESS THAN OR EQUAL TO 
ZERO [SIGNP DOES NOT REQUIRE N TO BE OF NUMBER TYPE].  THE
INDICATORS FOLLOW THE PDP-10 ARITHMETIC COMPARISON INSTURCTIONS, AND
SHOULD BE SELF EXPLANATORY:  - L E LE A GE N G 

3) INTERRUPTING CONDITIONS WHICH THE USER MAY TRAP AND SERVICE WITH
EXPR CODE HAVE BEEN EXPANDED, AND MODIFIED SLIGHTLY.  IN ADDITION
TO THOSE MENTIONED IN THE LAST NOTE, ON CAN NOW TRAP OUT ON UNDEFINED
FUNCTION ERROR, UNBOUND VARIABLE ERROR, WRONG TYPE  OF ARGUMENT 
ERROR, AND MISSING PROG TAG ERROR.  IF THE USER'S SERVICE FUNCTION 
FOR THESE FOUR TRAPS RETURNS A NON-NIL VALUE, IT IS ASSUMED TO BE A
LIST OF THE CORRECTED ITEM.  THUS ONE MIGHT HAVE A FUNCTION
OF THIS NATURE RETURN '(0) WHENEVER NIL SHOWS UP AS AN
ARGUMENT TO PLUS [ETC].  ORDINARILY, ONE WOULD HAVE SUCH
FUNCTIONS REQUEST SOME CONSOLE INTERACTION WITH THE USER, PERHAPS
WITH THE FUNCTION BREAK, BUT ONE ANTICIPATED USE OF THE UNDEFINED 
FUNCTION TRAP IS TO SEARCH A FILE FOR A DEFINITION FOR THE FUNCTION 
AND LOAD IT IN IF FOUND.
	NOTE WELL: THE WAY IN  WHICH INTERRUPT FUNCTIONS ARE 
SPECIFIED HAS CHANGED.  DISREGARD THE DESCRIPTION IN THE PREVIOUS 
NOTE.  TO SET A FUNCTION F [WHICH MUST BE A FUNCTION OF ONE ARGUMENT]
TO SERVICE INTERRUPT NUMBER N, DO (SSTATUS INTERRUPT N 'F) .  THE 
INTERRUPT CONDITIONS WHICH THE USER MAY TRAP ARE:

      NUMBER	      MEANING
	1	<CONTROL>-H TYPED ON JOB CONSOLE - CURRENTLY PRESET 
		TO A SIMPLE BREAK BY THE SYSTEM.
	2	<CONTROL>-A TYPED ON JOB CONSOLE. NOT ALSO THAT
		THE VALUE OF THE ATOM ^A IS CHANGED BY THE TYPING
		OF <CONTROL>-A REGARDLESS OF THE USER'S TRAP.
	3	ALARMCLOCK EXPIRATION.
	4	AN ERROR HAS OCCURRED WITHIN THE SCOPE ON AN ERRSET,
		AND THE ERRSET IS ABOUT TO RETURN A NIL. OTHERWISE,
		AN ERROR OCCURING UNDER AN ERRSET COMPUTATION WILL 
		NOT ACTIVATE THE USER'S TRAP, BUT SIMPLY CAUSE THE 
		ERRSET TO RETURN NIL.
	5	UNDEFINED FUNCTION.  
	6	UNBOUND VARIABLE.
	7	ARGUMENT NOT OF CORRECT TYPE.
	8	ATTEMPTED GO TO A NON-EXISTANT PROG TAG.

THE SERVICE FUNCTIONS FOR INTERRUPTS 1-4 CURRENTLY HAVE NIL GIVEN TO 
THEM AS ARGUMENT; BUT FOR INTERRUPTS 5-8 THE OFFENDING OBJECT IS 
PASSED ALONG AS ARGUMENT.  SUGGESTIONS FOR FURTHER REFINEMENTS OF 
THIS SCHEME ARE INVITED FROM THE USING COMMUNITY.

4) THE FUNCTION BAKGAG IS NO LONGER WITH US, AND THERE IS NO MORE
AUTOMATIC PRINT OUT OF A BACKTRACE WHEN AN ERROR OCCURS. HOWEVER, 
THE FUNCTIOPCKTRACE WILL STILL PRINT OUT A BACKTRACING, AND
THE FUNCTIION OF *RSET HAS BEEN EXPANDED TO INCLUDE THAT OF THE 
PREVIOUS BAKGAG:  WHENEVER A PROGRAM IS RUNNING IN *RSET MODE [SEE 
PREVIOUS NLISP NOTE], ADDITIONAL CRUFT IS STORED ON THE SYSTEM PDL 
SO THAT A (BAKTRACE) WILL BE WONDERFULLY CLEAR.

5) THERE IS A NEW FUNCTION: (EXPT X N) COMPUTES X TO THE NTH POWER,
WHERE N IS A FIXED-POINT NUMBER AND X IS ANY NUMBER. IT RUNS FASTLY.

6) SOME IMPORTANT REMINDERS!!
THE FOLLOWING ITEMS HAVE BEEN DOCUMENTED ELSEWHERE, BUT BECAUSE OF
THE PREVALENCE OF MISUNDERSTANDING ABOUT THEM, THEY ARE REPRODUCED
HERE.
  A)	(MAKOBLIST NIL) RETURNS A LIST OF LISTS, LIKE THE OLD STYLE
	OBLIST.  AN OBLIST IS NOT NORMALLY KEPT AROUND IN THE SYSTEM,
	BUT RATHER AN OBARRAY.  (MAKOBLIST 'NEWOB) WILL COPY THE 
	CURRENT OBARRAY AND ATTACH IT AS THE ARRAY PROPERTY OF THE 
	ATOM  NEWOB.  ONE CAN LAMBDA-BIND AND SETQ THE ATOM OBARRAY
	IN ORDER TO CHANGE OBARRAYS.
  B)	MAKNAM HAS NONE OF THE IDIOSYNCRATIC SYNTAX FEATURES OF THE 
	FUNCTION READ.  IT ALWAYS COMPRESSES A LIST OF CHARACTERS 
	INTO A NEW ATOM WHICH IS NOT INTERNED ON THE OBARRAY.
  C)	EXPLODE AND EXPLODEC ALWAYS BUT ALWAYS PRODUCE SINGLE 
	CHARACERT PNAME-TYPE ATOMS.  THUS (EXPLODEC 1.2) WOULD 
	PRINT OUT AS (/1 /. /2)  
  D)	IF ONE USES > WITH UREAD, AS IN (UREAD FOO >), THEN 
	(STATUS UREAD) WILL RETURN A LIST OF THE ACTUAL FILE NAMES 
	AND DEVICE WHICH WOULD PRINT OUT AS, SAY, (FOO /12 DSK JONL)
	BUT A SUBSEQUENT CALL TO UFILE WITH NO ARGUMENTS (UFILE) 
	WOULD CAUSE AN OPEN OUTPUT FILE TO BE FILED AWAY AS FOO 13
  E)	A MINOR GLITCH CONDITION HAS BEEN CORRECTED FOR SPLICING-TYPE
	READ MACROS; IF ONE IS ENCOUNTERED AT THE TOP-LEVEL READ 
	[RATHER THAN WHILE READING THE ELEMENTS OF A LIST] THEN ITS 
	VALUE IS IGNORED AND READ TRIES AGAIN.  HENCE SUSSMAN'S 
	SEMI-COLON MACRO WILL WORK AS DESIRED.