7/8/73 - JONL -

			TRY NLISP!

POSSIBLE DIFFICULTIES:
   1) EQ WILL NOT BE GUARANTEED TO WORK ON SMALL FIXNUMS.  ONE SHOULD 
	USE = OR EQUAL AS APPROPRIATE.
   2) ZEROP MUST BE COMPILED DIFFERENTLY FOR NLISP THAN FOR LISP.  
	THUS IF YOUR CODE HAS ANY ZEROP'S IN IT,  YOU WILL HAVE TO 
	RECOMPILE EITHER WITH SYS:TS XCOMPLR, WHICH IS A NORMAL COMPLR
	SET UP TO COMPILE ZEROP FOR NLISP, OR WITH SYS:TS NCOMPLR, 
	WHICH IS THE SUPER-DUPER-WINNING COMPILER THAT HAS BEAT OUT 
	FORTRAN ON REASONABLE NUMERICAL PROGRAMS.  ERIC ROSEN, WHO IS 
	IN T.S. 834 FOR THE REMAINDER OF THE SUMMER, WILL BE ABLE TO
	HELP YOU WITH THE DECLARATIONS TO NECESSARY TO GIVE YOU AS 
	MUCH OPEN-CODED REAL, LIVE ARITHMETIC AS IS POSSIBLE IN A 
	LISP PROGRAM.
   3) THUS MANY PROGRAMS WILL BE LISP-NLISP COMPATIBLE, OR CAN BE MADE
	SO BY THE REPLACEMENT OF (ZEROP X) WITH (= X 0), AND THE 
	CAREFUL REMOVAL OF ANY USE OF EQ ON NUMBERS.  AS OF THIS DATE,
	COM:LAP FASL, COM:GRIND FASL, AND COM:INDEX FASL ARE SO 
	COMPATIBLE.  HOPEFULLY, THERE WILL BE A COMPATIBLE CNVR 
	FORTHCOMING.  THE COMPATIBLE INDEXER, HOWEVER, WILL PROPERLY 
	INDEX CNVR CODE WHEN CNPARSE IS SET TO NON-NIL.
   4) JONL WILL BE ON VACATION FROM TUESDAY, JULY 10, UNTIL SUNDAY,
	JULY 22.  HOPEFULLY, GUY STEELE [GLS] WILL BE ABLE TO HELP 
	ALL YOU LISP LOSERS OUT THERE OVERCOME THE UNEXPECTED 
	"FEATURES".  AT ANY RATE, DONT HESITATE TO LEAVE MAIL.



THE SYSTEM INDEXER, OBTAINABLE BY FASLOADING IN COM:INDEX FASL, NOW
HANDLES CNVR FILES APPROPRIATELY.  BY SETTING THE VARIABLE CNPARSE
TO NON-NIL, YOU MAY INFORM THE INDEXER THAT A CNVR FILE IS COMING,
AND THAT IT SHOULD OBEY THE CNVR READ MACROS.


THE VALUE OF THE VARIABLE EDIT IS NOW (AS OF LISP 486) A LIST OF FLAGS
THAT THE IN-CORE EDITOR WILL USE WHEN SEARCHING FOR A FUNCTION 
DEFINITION.  THUS TO EDIT CNVR FUNCTIONS, ONE MAY WANT TO DO
		(SETQ EDIT (CONS 'CEXPR EDIT))
THE VALUE OF THE VARIABLE  IS THE BACK-UP CHAIN FOR THE EDITOR, 
THE CAR OF WHICH WILL BE POINTING TO THE PLACE IN YOUR FUNCTION WHERE
THE CURRENT EDIT CURSOR IS. THUS, ONE MAY USE THE EDITOR TO POSITION
THE EDIT-CURSOR, AND THEN RUN OTHER PROGRAMS THAT "TAKE IT FROM THERE"


THE NEW FUNCTION LISTIFY, A SUBR OF ONE ARGUMENT, MAY BE OF USE TO 
THOSE WHO USE LEXPRS.  IT IS ESSENTIALLY A FAST, HAND-CODED VERSION 
OF THE FOLLOWING EXPR:
   (DEFUN LISTIFY (N) 
	(COND ((ZEROP N) NIL)
	      ((DO  ((I 1 (1+ I)) (L NIL))
		    ((> I N) (REVERSE L))
		 (SETQ L (CONS (ARG I) L))))))
IN SHORT, IT MAY BE USED TO QUICKLY UNSTACK THE ARGUMENTS TO AN LEXPR,
AND CONS THEM UP INTO A LIST.
********** HAS BEEN EXTENDED - SEE NOTE OF 7/30/73 **********

 

(STATUS LINEL . . .) AND (STATUS CHRCT . . .)  HAVE BEEN FLUSHED, 
SINCE THIS IS NOT THE WAY THEY WILL BE USED IN THE NEW MULTIPLEL I/O 
CHANNEL SCHEME.  THIS HIGHLY DESIRABLE FEATURE, WHICH IS PARTIALLY 
IMPLEMENTED, MIGHT BE FINISHED IF AND WHEN STAVROS EVER COMES BACK 
FROM GREECE.  THEN AGAIN, IT MIGHT NOT.


BOTH MIDAS AND MACLISP ARE NOW AVAILABLE FOR USE ON A DEC SYSTEM-10
TIME-SHARING MONITOR [AND CONSEQUENTLY, FOR USE UNDER A TENEX MONITOR]
FOR MORE INFORMATION, LEAVE MAIL FOR JONL.