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