$ od -c -N 50000 [phylum]<3-LISP>DESRIVIERES>PRELIMINARY>NLISP.TED!1 0000000 \r 0000020 0000040 T h e N e w I m p l e m e 0000060 n t a t i o n \r 0000100 * 0000140 o f n - L I S P 0000160 \r \r L a s t e d i t e d : F 0000200 r i d a y , S e p t e m b e r 0000220 3 0 , 1 9 8 3 a t 1 1 : 0000240 0 0 \r F i l e d o n : { D S 0000260 K } N L I S P . T E D \r W r i t 0000300 t e n b y : J i m d e s 0000320 R i v i e r e s \r \r \r \r T h i s 0000340 i s a f i r s t c u t 0000360 a t a t s p e c i f i c a t 0000400 i o n f o r t h e n e w 0000420 i m p l e m e n t a t i o n o 0000440 f t h e n - L I S P f a m 0000460 i l y o f l a n g u a g e s 0000500 . T h e g o a l s o f 0000520 t h e p r o j e c t o f a 0000540 r e n - f o l d : \r \r 0000560 1 . T o 0000600 p r o v i d e i m p l e m e n 0000620 t a t i o n s o f 2 - L I S 0000640 P a n d 3 - L I S P t h a 0000660 t a r e s e r i o u s e n 0000700 o u g h , a n d e f f i c i 0000720 e n t e n o u g h , t o b 0000740 e p u t t o u s e b y 0000760 p a r t i c i p a n t s i n 0001000 t h e w i n t e r t e r m 0001020 C S L I r e s e a r c h s e 0001040 m i n a r . T h e s e i m 0001060 p l e m e n t a t i o n s w i 0001100 l l r u n o n D - m a c h 0001120 i n e s . \r \r 0001140 2 . T o s e r v 0001160 e a s a t e s t b e d f 0001200 o r n e w v a r i a t i o n 0001220 s o n t h e n - L I S P 0001240 t h e m e . I t s h o u l 0001260 d b e p o s s i b l e f o 0001300 r p r o j e c t m e m b e r 0001320 s t o m o d i f y / a d a p 0001340 t t h e e x i s t i n g s 0001360 o u r c e c o d e s o a s 0001400 t o i m p l e m e n t a 0001420 n e w d i a l e c t v e r 0001440 y q u i c k l y . \r \r 0001460 3 . T 0001500 o s e r v e a s t h e b 0001520 a s i s o f a n i m p l e 0001540 m e n t a t i o n o f 3 - L 0001560 I S P t h a t c a n b e 0001600 d i s t r i b u t e d t o i 0001620 n t e r e s t e d r e s e a r 0001640 c h e r s w h o h a v e a 0001660 c c e s s t o a f u l l 0001700 L I S P s y s t e m ( e . g 0001720 . , Z e t a L i s p , F r a 0001740 n z L i s p , T , P S L , 0001760 M a c L i s p ) b u t n 0002000 o t n e c e s s a r i l y t 0002020 o I N T E R L I S P - D . 0002040 \r \r E x i s t i n g i m p l e 0002060 m e n t a t i o n s o f 3 - 0002100 L I S P s a t i s f y n o n 0002120 e o f t h e s e g o a l s 0002140 ; t h e y a r e a l l t 0002160 o o s l o w , t o o m a c 0002200 h i n e s p e c i f i c , a 0002220 n d n o t v e r y m o d u 0002240 l a r . G o a l s # 1 a 0002260 n d # 2 t a k e p r e c e 0002300 d e n c e o v e r g o a l 0002320 # 3 . \r \r I m p l e m e n t a t 0002340 i o n M o d u l e s \r \r T h 0002360 e i m p l e m e n t a t i o n 0002400 m o d u l e s a r e a s 0002420 f o l l o w s : \r \r S t r u 0002440 c t u r a l F i e l d \r 0002460 F u n c t i o n s 0002500 t h a t i m p l e m e n t 0002520 t h e s t r u c t u r a l f 0002540 i e l d . \r U s e r I n t 0002560 e r f a c e \r 0002600 F u n c t i o n s t h a t p 0002620 r o v i d e c o n v e n i e n 0002640 t e d i t i n g a n d f i 0002660 l e m a n a g e m e n t c a 0002700 p a b i l i t i e s . \r E x 0002720 t e r n a l i s a t i o n a n 0002740 d I n t e r n a l i s a t i o 0002760 n \r F u n c t i 0003000 o n s t h a t i m p l e m e 0003020 n t t h e t a a n d t h e 0003040 t a i n v e r s e . \r C e 0003060 n t r a l P r o c e s s o r \r 0003100 F u n c t i o n 0003120 s t h a t i m p l e m e n t 0003140 t h e p r o c e s s o r o 0003160 f t h e o b j e c t l a n 0003200 g u a g e . \r S t a n d a r 0003220 d E n v i r o n m e n t \r 0003240 O b j e c t l i b 0003260 r a r i e s t h a t i m p l 0003300 e m e n t t h e k e r n e l 0003320 , c o n v e n i e n c e u t 0003340 i l i t i e s , d e b u g g e 0003360 r s , e t c . \r \r T h i s i 0003400 s t h e m o s t n a t u r 0003420 a l f a c t o r i n g o f 0003440 c o n c e r n s , t h o u g h 0003460 i t w i l l b e c o m e 0003500 o b v i o u s t h a t t h e 0003520 r e a r e s o m e n a s t 0003540 y i n t e r d e p e n d e n c 0003560 i e s . \r \r U s e r I n t e 0003600 r f a c e \r \r I n t h e i n 0003620 t e r e s t o f p o r t a b 0003640 i l i t y , t h e s y s t e 0003660 m m u s t n o t r e q u i 0003700 r e a f a n c y r a s t e 0003720 r d i s p l a y a n d m o 0003740 u s e . A t t h e s a m 0003760 e t i m e , i t s h o u l 0004000 d b e p o s s i b l e t o 0004020 u t i l i z e s u c h a 0004040 d e v i c e i f i t i s 0004060 a v a i l a b l e . I n p 0004100 a r t i c u l a r , t h e D 0004120 - m a c h i n e i m p l e m e 0004140 n t a t i o n c a n a n d 0004160 w i l l b e s p i f f y . \r 0004200 \r W e w i l l a s s u m e 0004220 t h a t R E A D a n d P R 0004240 I N T a r e p r i m i t i v 0004260 e s i n n - L I S P , a n 0004300 d t h a t c h a r a c t e r 0004320 s t r i n g m a n i p u l a 0004340 t i o n , p a r s i n g , e 0004360 d i t i n g , e t c . a r e 0004400 a l l d o n e o u t s i d 0004420 e o f n - L I S P . \r \r \r S 0004440 t u c t u r a l F i e l d \r \r 0004460 T h e r e w i l l b e a 0004500 c o l l e c t i o n o f L I 0004520 S P f u n c t i o n s t h a 0004540 t i m p l e m e n t t h e 0004560 n - L I S P s t r u c t u r a 0004600 l f i e l d . T h i s 0004620 i s n o t s t r i c t l y 0004640 i n d e p e n d e n t o f t 0004660 h e c e n t r a l p r o c e 0004700 s s o r s i n c e t h e r e 0004720 w i l l b e a n e e d 0004740 f o r p r o c e s s o r - s p 0004760 e c i f i c r e p r e s e n t 0005000 a t i o n s o f c o m m o n 0005020 l y o c c u r i n g s t r u 0005040 c t u r e s s u c h a s e 0005060 n v i r o n m e n t s a n d 0005100 c o n t i n u a t i o n s . 0005120 T h e s t r u c t u r a l 0005140 f i e l d m o d u l e w i l 0005160 l b e w r i t t e n i n 0005200 s u c h a w a y t h a t 0005220 a d d i n g o r d e l e t i 0005240 n g n e w s t r u c t u r a 0005260 l f i e l d c a t e g o r i 0005300 e s a n d r e p r e s e n t 0005320 a t i o n s i s p o s s i 0005340 b l e . \r \r \r C e n t r a l P 0005360 r o c e s s o r \r \r T o a c h 0005400 i e v e s p e e d , t h e r 0005420 e w i l l b e a t l e a 0005440 s t o n e c e n t r a l p 0005460 r o c e s s o r t h a t i s 0005500 c o m p i l e r - b a s e d 0005520 ( t h o u g h t h e u s e r 0005540 w i l l n o t k n o w t 0005560 h i s ) . O f c o u r s e 0005600 , t h e c e n t r a l p r 0005620 o c e s s o r i s d i a l e 0005640 c t - s p e c i f i c \r \r \r D i 0005660 a l e c t s t o I m p l e m 0005700 e n t \r \r F i r s t o f f , 0005720 w e d o a c o m p i l e r 0005740 - b a s e d n o n - m e t a - 0005760 s t r u c t u r a l d i a l e 0006000 c t w i t h t h e f o l l 0006020 o w i n g p r o p e r t i e s 0006040 : \r \r D e s i 0006060 g n a t e d d o m a i n s : 0006100 t r u t h - v a l u e s , 0006120 n u m b e r s , s y m b o l s 0006140 , s e q u e n c e s , a n d 0006160 f u n c t i o n s . \r \r 0006200 D e s i g n a t o r 0006220 s : V a r i a b l e n a m 0006240 e s , s y m b o l n a m e s 0006260 , n u m e r a l s , b o o l 0006300 e a n s , a p p l i c a t i o 0006320 n s , r a i l s , a n d c 0006340 l o s u r e s . \r \r 0006360 P r i m i t i v e s e x t 0006400 e n s i o n s a l f u n c t i 0006420 o n s : F I R S T , R E S 0006440 T , E M P T Y , P R E P , 0006460 S E Q E U N C E , + , - , 0006500 * , / , < , = , N 0006520 U M B E R , S Y M B O L . \r \r 0006540 P r i m i t i v 0006560 e i n t e n s i o n a l f u 0006600 n c t i o n s : L A M B D A 0006620 ( l ) , I F , C O N D , 0006640 L E T , L E T R E C , D E F 0006660 I N E , B L O C K . \r \r 0006700 O p t i o n a l p r 0006720 i m i t i v e s : R E A D 0006740 a n d P R I N T ( n o n - m 0006760 e t a - s t r u c t u r a l v 0007000 e r s i o n s ) . \r \r 0007020 H i g h e r o r d e r : 0007040 d e f i n i t e l y . \r \r 0007060 T a i l - r e c u r 0007100 s i v e p r o c e s s o r : 0007120 o f c o u r s e . \r \r 0007140 M u l t i p l e a r 0007160 g u m e n t s : d o n e t 0007200 h r o u g h c u r r y i n g ? 0007220 o r w i t h s e q u e n c 0007240 e s . \r \r \r \r \r \r ~ ~ ~ E n d 0007260 o f F i l e ~ ~ ~ \r \r \0 \0 0007300 \0 001 \0 \0 \0 \a C L A S S I C \0 \f \0 0007320 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 p \0 \0 \0 \n T 0007340 I M E S R O M A N \0 022 \0 \0 \0 \0 \0 0007360 \0 002 \0 \0 \0 \0 001 \0 \0 \0 \a C L A S S 0007400 I C \0 \f \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 g 0007420 \0 \0 \0 \a C L A S S I C \0 \b \0 \0 \0 0007440 \0 \0 \0 \0 \0 \0 \0 003 374 \0 \0 \0 \a C L A 0007460 S S I C \0 \f \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0007500 \0 026 \0 \0 \0 \a C L A S S I C \0 016 \0 0007520 \0 \0 \0 \0 \0 002 \0 \0 \0 \0 1 \0 \0 \0 \a C 0007540 L A S S I C \0 \f \0 \0 \0 \0 \0 \0 \0 \0 0007560 \0 \0 \0 020 \0 \0 \0 \a C L A S S I C \0 0007600 \f \0 \0 \0 \0 \0 \0 002 \0 \0 \0 \0 < \0 \0 \0 0007620 \a C L A S S I C \0 \f \0 \0 \0 \0 \0 \0 0007640 \0 \0 \0 \0 \0 016 \0 \0 \0 \a C L A S S I 0007660 C \0 \f \0 \0 \0 \0 \0 \0 002 \0 \0 \0 \0 X \0 0007700 \0 \0 \a C L A S S I C \0 \f \0 \0 \0 \0 0007720 \0 \0 \0 \0 \0 \0 \0 # \0 \0 \0 \a C L A S 0007740 S I C \0 \f \0 \0 \0 \0 \0 \0 002 \0 \0 \0 \0 0007760 = \0 \0 \0 \a C L A S S I C \0 \f \0 \0 0010000 \0 \0 \0 \0 \0 \0 \0 \0 \0 021 \0 \0 \0 \a C L 0010020 A S S I C \0 \f \0 \0 \0 \0 \0 \0 002 \0 \0 0010040 \0 \0 J \0 \0 \0 \a C L A S S I C \0 \f 0010060 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 024 \0 \0 \0 \a 0010100 C L A S S I C \0 \f \0 \0 \0 \0 \0 \0 002 0010120 \0 \0 \0 \0 332 \0 \0 \0 \a C L A S S I C 0010140 \0 \f \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 016 \0 \0 0010160 \0 \a C L A S S I C \0 016 \0 \0 \0 \0 \0 0010200 \0 002 \0 \0 \0 001 020 \0 \0 \0 \a C L A S S 0010220 I C \0 \f \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 004 0010240 \0 \0 \0 005 G A C H A \0 \f \0 \0 \0 \0 \0 0010260 \0 \0 \0 \0 \0 \0 005 \0 \0 \0 \a C L A S S 0010300 I C \0 \f \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 005 0010320 \0 \0 \0 005 G A C H A \0 \f \0 \0 \0 \0 \0 0010340 \0 \0 \0 \0 \0 \0 | \0 \0 \0 \a C L A S S 0010360 I C \0 \f \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 017 0010400 \0 \0 \0 \a C L A S S I C \0 016 \0 \0 \0 0010420 \0 \0 \0 002 \0 \0 \0 001 271 \0 \0 \0 \a C L A 0010440 S S I C \0 \f \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0010460 \0 021 \0 \0 \0 \a C L A S S I C \0 016 \0 0010500 \0 \0 \0 \0 \0 002 \0 \0 \0 \0 266 \0 \0 \0 \a C 0010520 L A S S I C \0 \f \0 \0 \0 \0 \0 \0 \0 \0 0010540 \0 \0 \0 025 \0 \0 \0 \a C L A S S I C \0 0010560 016 \0 \0 \0 \0 \0 \0 002 \0 \0 \0 001 317 \0 \0 \0 0010600 \a C L A S S I C \0 \f \0 \0 \0 \0 \0 \0 0010620 \0 \0 \0 \0 \0 001 \0 \0 \0 005 H I P P O \0 0010640 \f \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 001 + \0 \0 \0 0010660 \a C L A S S I C \0 \f \0 \0 \0 \0 \0 \0 0010700 \0 \0 \0 \0 016 276 \0 037 z 267 0010712