$ od -c -N 50000 [phylum]<LISP>Lyric>Lispusers>CD.TEDIT!1 0000000 X E R O X \t C D \r 2 \r \r 4 \r \r 1 0000020 \r \r C D \r 1 \r \r 4 \r \r B y : 0000040 H e n r y T h o m p s o n ( 0000060 H T h o m p s o n . p a @ X e r 0000100 o x ) \r T h i s d o c u m e n 0000120 t l a s t e d i t e d D e 0000140 c e m b e r 3 , 1 9 8 7 \r I 0000160 N T R O D U C T I O N \r T h e 0000200 f i l e C D i m p l e m e n 0000220 t s a U N I X * - s t y l e 0000240 f a c i l i t y f o r m a 0000260 n i p u l a t i n g t h e c 0000300 o n n e c t e d d i r e c t o 0000320 r y . I t a l s o i n s 0000340 u r e s t h a t t h e c o 0000360 n n e c t e d d i r e c t o r 0000400 y i s a l w a y s d i s p 0000420 l a y e d . \r C D P A T T E R 0000440 N \t [ E x e c c o m m a n d ] 0000460 \r M O D U L E E X P L A N A T 0000500 I O N S \r C D i s d e f i n 0000520 e d a s a L I S P X M A C 0000540 R O w h i c h a l l o w s 0000560 l o w - o v e r h e a d m e a 0000600 n s o f e f f e c t i n g 0000620 m a n y c o m m o n c h a n 0000640 g e s o f c o n n e c t e d 0000660 d i r e c t o r y . I t s 0000700 b e h a v i o u r i s p a 0000720 r t l y c o n d i t i o n e d 0000740 b y t h r e e g l o b a l 0000760 v a r i a b l e s : \r C D . D 0001000 E F A U L T . H O S T \t [ V a r 0001020 i a b l e ] \r C D . D E F A U L 0001040 T . P R E F I X \t [ V a r i a b 0001060 l e ] \r C D . D E F A U L T . U 0001100 S E R \t [ V a r i a b l e ] \r C 0001120 D . D E F A U L T . H O S T d 0001140 e f a u l t s t o D S K . 0001160 C D . D E F A U L T . P R E F 0001200 I X d e f a u l t s t o t 0001220 h e n a m e ( e . g . D S 0001240 K ) o f t h e l o c a l 0001260 d i s k v o l u m e o n a 0001300 D a n d e l i o n , o t h e 0001320 r w i s e N I L . C D . D 0001340 E F A U L T . U S E R d e f a 0001360 u l t s t o t h e v a l u 0001400 e o f U S E R N A M E , a 0001420 n d i s u p d a t e d a u 0001440 t o m a t i c a l l y a f t e 0001460 r G R E E T i n g . \r T h e 0001500 v a l u e o f C D i s a 0001520 l w a y s a C O N S - p a i 0001540 r o f t h e o l d a n d 0001560 n e w c o n n e c t e d d 0001600 i r e c t o r i e s . \r O n h 0001620 o s t s w h i c h s u p p o 0001640 r t s o m e f o r m o f 0001660 s u b - d i r e c t o r y , C 0001700 D n e e d s t o k n o w 0001720 t h e c h a r a c t e r w h 0001740 i c h i s u s e d t o s 0001760 e p a r a t e s u b - d i r e 0002000 c t o r i e s . T h e t a 0002020 b l e C D . O S . S E P R S 0002040 i s a n a - l i s t w h i 0002060 c h d e t e r m i n e s t h 0002100 i s m a p p i n g - i t 0002120 i s i n i t i a l i s e d t 0002140 o m a p U N I X * a n d 0002160 V M S t o " / " a n d D 0002200 S K , N S a n d I F S t 0002220 o " > " . T o e n t e r 0002240 t h i s t a b l e i t l 0002260 o o k s u p t h e h o s t 0002300 f i r s t i n C D . O S . 0002320 S E P R S d i r e c t l y , 0002340 t h e n v i a N E T W O R K 0002360 O S T Y P E S . I n t h e 0002400 d o c u m e n t a t i o n w 0002420 h i c h f o l l o w s , " > 0002440 " m e a n s w h a t e v e r 0002460 t h e s e p a r a t o r i 0002500 s f o r t h e r e l e v a 0002520 n t h o s t . \r T h e p o s 0002540 s i b i l i t i e s f o r p 0002560 a t t e r n a r e a s f o 0002600 l l o w s : \r e m p t y \r C o n 0002620 n e c t s t o t h e d i r 0002640 e c t o r y d e t e r m i n e 0002660 d b y t h e c o n j u n c 0002700 t i o n o f C D . D E F A U 0002720 L T . H O S T , C D . D E F A 0002740 U L T . P R E F I X a n d C 0002760 D . D E F A U L T . U S E R . \r 0003000 { a n y t h i n g \r I n t e r p 0003020 r e t s p a t t e r n a s 0003040 a c o m p l e t e d i r e c 0003060 t o r y s p e c i f i c a t i 0003100 o n , a n d c o n n e c t s 0003120 t o i t . \r < a n y t h i n 0003140 g \r I n t e r p r e t s p a t 0003160 t e r n a s a d i r e c t 0003200 o r y s p e c i f i c a t i o 0003220 n t o b e q u a l i f i e 0003240 d b y C D . D E F A U L T . 0003260 H O S T a n d C D . D E F A 0003300 U L T . P R E F I X , a n d 0003320 c o n n e c t s t o i t . 0003340 F o r e x a m p l e i f 0003360 C D . D E F A U L T . H O S T 0003400 i s { s e r v e r } a n d 0003420 C D . D E F A U L T . P R E F 0003440 I X i s N I L , t h e n 0003460 C D < d i r > s d i r > i s 0003500 e q u i v a l e n t t o C 0003520 D { s e r v e r } < d i r > s 0003540 d i r > , w h e r e a s i f 0003560 C D . D E F A U L T . P R E F 0003600 I X w a s / u s e r a n d 0003620 s e r v e r w a s k n o w 0003640 n t o b e r u n n i n g 0003660 U N I X * , t h e n C D < 0003700 d i r / s d i r > w o u l d 0003720 b e e q u i v a l e n t t o 0003740 C D { s e r v e r } < / u s 0003760 e r / d i r / s d i r > . \r . > 0004000 r e s t \r E q u i v a l e n t 0004020 t o C D r e s t . T h i 0004040 s i s p u r e l y f o r 0004060 c o m p a t a b i l i t y w i 0004100 t h U N I X * . \r . . > r e s 0004120 t \r E q u i v a l e n t t o 0004140 p e e l i n g o f f o n e 0004160 ( s u b - ) d i r e c t o r y 0004200 f r o m t h e c u r r e n t 0004220 l y c o n n e c t e d d i r 0004240 e c t o r y , f o l l o w e d 0004260 b y C D r e s t . F o 0004300 r e x a m p l e , i f c o 0004320 n n e c t e d t o { s e r v 0004340 e r } < d i r > s d i r > , t 0004360 h e n C D . . > s d i r 1 0004400 i s e q u i v a l e n t t o 0004420 C D { s e r v e r } < d i r 0004440 > s d i r 1 > . \r o t h e r w i 0004460 s e \r T r e a t p a t t e r n 0004500 a s a f u r t h e r s p 0004520 e c i a l i s a t i o n o f 0004540 t h e c u r r e n t d i r e 0004560 c t o r y , a n d c o n n e 0004600 c t t o t h e r e s u l t 0004620 i n g s u b - d i r e c t o r 0004640 y . F o r e x a m p l e , 0004660 i f c o n n e c t e d t o 0004700 { s e r v e r } < d i r > s d 0004720 i r > , t h e n C D s s d 0004740 i r i s e q u i v a l e n t 0004760 t o C D { s e r v e r } < d 0005000 i r > s d i r > s s d i r > . \r 0005020 N o t e t h a t t h r o u g 0005040 h o u t , t h e c l o s i n 0005060 g " > " i s o p t i o n a 0005100 l . \r M e n u I n t e r f a c 0005120 e \r A t a n y t i m e y o 0005140 u c a n b u t t o n ( l e 0005160 f t o r m i d d l e ) i n 0005200 t h e w i n d o w d i s p 0005220 l a y i n g t h e c u r r e 0005240 n t c o n n e c t e d d i r 0005260 e c t o r y , a n d s e e 0005300 a m e n u o f a l l t h 0005320 e d i r e c t o r i e s y o 0005340 u h a v e y e t b e e n 0005360 c o n n e c t e d t o , a n 0005400 d s e l e c t i n g o n e 0005420 w i l l m o v e y o u t h 0005440 e r e . Y o u c a n a l 0005460 s o s h i f t - s e l e c t 0005500 o u t o f t h i s m e n u 0005520 i n t o t h e c u r r e n 0005540 t i n p u t s t r e a m . 0005560 T h i s l a t t e r i s 0005600 v e r y u s e f u l w h e n 0005620 t y p i n g f i l e n a m 0005640 e s . \r \r * U N I X 0005660 i s a t r a d e m a r k o 0005700 f B e l l L a b o r a t o r 0005720 i e s . \0 \0 \0 \0 \0 003 ( L I S T 0005740 ( ( P A G E N I L ( P A P E 0005760 R S I Z E L E T T E R S T A 0006000 R T I N G P A G E # 3 8 ) ( 0006020 0 0 6 1 2 7 9 2 ) ( ( F 0006040 O L I O N I L ( P A R A L O 0006060 O K S ( Q U A D C E N T E R 0006100 E D ) C H A R L O O K S ( S 0006120 U P E R S C R I P T 0 I N V 0006140 I S I B L E O F F S E L E C 0006160 T P O I N T O F F P R O T E 0006200 C T E D O F F S I Z E 1 0 0006220 F A M I L Y M O D E R N O 0006240 V E R L I N E O F F S T R I 0006260 K E O U T O F F U N D E R L 0006300 I N E O F F E X P A N S I O 0006320 N R E G U L A R S L O P E 0006340 R E G U L A R W E I G H T M 0006360 E D I U M I N V E R T E D O 0006400 F F U S E R I N F O N I L 0006420 S T Y L E N I L ) F O R M A 0006440 T I N F O N I L ) ( 1 7 4 0006460 3 6 2 8 8 3 6 ) N I L ) 0006500 ( H E A D I N G N I L ( H E 0006520 A D I N G T Y P E R U N N I N 0006540 G H E A D ) ( 8 4 7 4 4 5 0006560 2 8 3 6 ) N I L ) ( T E X 0006600 T N I L N I L ( 8 4 9 6 0006620 4 5 6 6 0 0 ) N I L ) ) ) 0006640 ( P A G E N I L ( P A P E 0006660 R S I Z E N I L . L E T T 0006700 E R ) ( 0 0 6 1 2 7 9 2 0006720 ) ( ( F O L I O N I L ( P 0006740 A R A L O O K S ( Q U A D C 0006760 E N T E R E D ) C H A R L O O 0007000 K S ( S U P E R S C R I P T 0007020 0 I N V I S I B L E O F F 0007040 S E L E C T P O I N T O F F 0007060 P R O T E C T E D O F F S I 0007100 Z E 1 0 F A M I L Y M O D 0007120 E R N O V E R L I N E O F F 0007140 S T R I K E O U T O F F U 0007160 N D E R L I N E O F F E X P 0007200 A N S I O N R E G U L A R S 0007220 L O P E R E G U L A R W E I 0007240 G H T M E D I U M I N V E R 0007260 T E D O F F U S E R I N F O 0007300 N I L S T Y L E N I L ) 0007320 F O R M A T I N F O N I L ) 0007340 ( 1 7 4 3 6 2 8 8 3 6 ) 0007360 N I L ) ( H E A D I N G N I 0007400 L ( H E A D I N G T Y P E R 0007420 U N N I N G H E A D ) ( 8 4 0007440 7 4 4 5 2 8 3 6 ) N I L ) 0007460 ( T E X T N I L N I L ( 0007500 8 4 9 6 4 5 6 6 0 0 ) N 0007520 I L ) ) ) ( P A G E N I L 0007540 ( P A P E R S I Z E N I L . 0007560 L E T T E R ) ( 0 0 6 1 0007600 2 7 9 2 ) ( ( F O L I O N 0007620 I L ( P A R A L O O K S ( Q 0007640 U A D C E N T E R E D ) C H 0007660 A R L O O K S ( S U P E R S C 0007700 R I P T 0 I N V I S I B L E 0007720 O F F S E L E C T P O I N T 0007740 O F F P R O T E C T E D O 0007760 F F S I Z E 1 0 F A M I L 0010000 Y M O D E R N O V E R L I N 0010020 E O F F S T R I K E O U T 0010040 O F F U N D E R L I N E O F 0010060 F E X P A N S I O N R E G U 0010100 L A R S L O P E R E G U L A 0010120 R W E I G H T M E D I U M 0010140 I N V E R T E D O F F U S E 0010160 R I N F O N I L S T Y L E 0010200 N I L ) F O R M A T I N F O 0010220 N I L ) ( 1 7 4 3 6 2 8 8 0010240 3 6 ) N I L ) ( H E A D I 0010260 N G N I L ( H E A D I N G T 0010300 Y P E R U N N I N G H E A D ) 0010320 ( 8 4 7 4 4 5 2 8 3 6 ) 0010340 N I L ) ( T E X T N I L 0010360 N I L ( 8 4 9 6 4 5 6 6 0010400 0 0 ) N I L ) ) ) ) ) \0 \0 \0 \0 0010420 \0 005 \0 005 \0 . \0 \0 \0 \0 001 310 \0 \a \0 \0 0010440 \0 001 003 004 \0 \0 001 001 310 001 \0 \0 \0 \0 \0 \0 0010460 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0010500 \0 \0 \0 ( \0 \0 \0 \0 001 310 \0 021 \0 \0 \0 004 0010520 002 003 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0010540 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 ( \0 212 \0 212 0010560 001 8 \0 006 \0 \0 \0 004 002 003 \0 \0 \0 \0 \0 \0 0010600 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0010620 \0 \0 \0 ( \0 212 \0 212 001 8 \0 \0 \0 \0 \0 004 0010640 002 004 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0010660 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 D \0 \0 \0 \0 0010700 001 310 \0 \0 \0 \0 \0 \0 003 004 \0 \0 001 001 310 001 0010720 \0 \0 \0 \0 \0 \0 \0 \v P A G E H E A D 0010740 I N G \0 \v R U N N I N G H E A D 0010760 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0011000 \0 \0 \0 004 \0 \v \0 024 \0 006 M O D E R N 0011020 \0 \n \0 \0 \0 \0 \0 \0 \0 \0 \0 027 \0 \t H E 0011040 L V E T I C A \0 \n \0 \0 \0 \0 \0 \0 \0 0011060 \0 \0 024 \0 006 M O D E R N \0 \n \0 \0 \0 0011100 \0 \0 \0 002 \0 \0 024 \0 006 M O D E R N \0 0011120 \f \0 \0 \0 \0 \0 \0 002 \0 \0 024 \0 006 M O D 0011140 E R N \0 \n \0 \0 \0 \0 \0 \0 \0 \0 \0 024 \0 0011160 006 M O D E R N \0 006 \0 \0 \0 \0 \0 \0 \0 0011200 \0 \0 022 \0 004 L O G O \0 030 \0 \0 \0 \0 \0 0011220 \0 \0 \0 \0 024 \0 006 M O D E R N \0 \n \0 0011240 \0 \0 \0 \0 \0 \0 200 \0 024 \0 006 M O D E R 0011260 N \0 \n \0 \0 \0 \0 \0 \0 001 \0 \0 024 \0 006 M 0011300 O D E R N \0 \n \0 002 \0 \0 \0 \0 \0 \0 \0 0011320 024 \0 006 M O D E R N \0 \n \0 \0 \0 \0 \0 0011340 \0 \0 \0 \0 \0 \0 \0 \0 002 \0 005 \0 \0 \0 005 \0 0011360 \0 \0 \0 \a \0 \0 \0 001 \0 \0 \0 \0 006 \0 \0 \0 0011400 003 \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 005 \0 \0 0011420 \0 002 \0 001 \0 \v H R U L E . G E T F 0011440 N 001 \0 024 \0 006 M O D E R N \0 \n \0 \0 0011460 \0 \0 \0 \0 \0 \0 \0 \0 \0 001 \0 \0 \0 \0 001 \0 0011500 \0 \0 \0 \0 002 \0 004 \0 \0 \0 002 \0 001 \0 \v H 0011520 R U L E . G E T F N 001 \0 024 \0 006 M 0011540 O D E R N \0 \n \0 \0 \0 \0 \0 \0 \0 \0 \0 0011560 \0 \0 001 \0 \0 \0 \0 001 \0 \0 \0 \0 \0 002 \0 004 0011600 \0 \0 \0 002 \0 001 \0 \v H R U L E . G E 0011620 T F N 001 \0 024 \0 006 M O D E R N \0 \n 0011640 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 001 \0 \0 \0 \0 0011660 001 \0 \0 \0 \0 \0 002 \0 003 \0 \0 \0 003 \0 \0 \0 0011700 \0 004 \0 \0 \0 \0 \0 002 \0 003 \0 \0 \0 002 \0 001 0011720 \0 \v H R U L E . G E T F N 001 \0 024 0011740 \0 006 M O D E R N \0 \f \0 \0 \0 \0 \0 \0 0011760 002 \0 \0 \0 \0 001 \0 \0 \0 \0 004 \0 \0 \0 \0 \0 0012000 002 \0 004 \0 \0 \0 002 \0 001 \0 \v H R U L E 0012020 . G E T F N 001 \0 024 \0 006 M O D E R 0012040 N \0 \f \0 \0 \0 \0 \0 \0 002 \0 \0 \0 \0 001 \0 0012060 \0 \0 \0 004 \0 \0 \0 \0 \0 002 \0 002 \0 \0 \0 ) 0012100 \0 \0 \0 \0 001 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 0012120 + \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 001 \0 \0 0012140 \0 \f \0 \0 \0 \0 003 \0 \0 \0 001 \0 \0 \0 \0 005 0012160 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 035 \0 \0 \0 \0 0012200 \v \0 \0 \0 001 \0 \0 \0 \0 \n \0 \0 \0 } \0 \0 0012220 \0 \0 \v \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 003 \0 0012240 \0 \0 \0 005 \0 \0 \0 \a \0 \0 \0 \0 \t \0 \0 \0 0012260 001 \0 \0 \0 \0 002 \0 \0 \0 017 \0 \0 \0 \0 005 \0 0012300 \0 \0 \0 \0 002 \0 001 \0 \0 \0 024 \0 \0 \0 \0 003 0012320 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 267 \0 \0 \0 \0 0012340 \v \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 033 \0 \0 \0 0012360 \0 \v \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 035 \0 \0 0012400 \0 \0 \v \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 033 \0 0012420 \0 \0 \0 \v \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 355 0012440 \0 \0 \0 \0 \v \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 0012460 P \0 \0 \0 \0 \v \0 \0 \0 \0 \0 002 \0 001 \0 \0 0012500 \0 336 \0 \0 \0 \0 \v \0 \0 \0 001 \0 \0 \0 \0 \n 0012520 \0 \0 \0 356 \0 \0 \0 \0 \v \0 \0 \0 \0 \0 002 \0 0012540 001 \0 \0 \0 026 \0 \0 \0 \0 \v \0 \0 \0 \a \0 \0 0012560 \0 \0 \t \0 \0 \0 021 \0 \0 \0 \0 \v \0 \0 \0 \0 0012600 \0 002 \0 001 \0 \0 \0 005 \0 \0 \0 \0 \t \0 \0 \0 0012620 001 \0 \0 \0 \0 \v \0 \0 \0 \0 \0 002 \0 001 \0 \0 0012640 \0 s \0 \0 \0 \0 \v \0 \0 \0 \0 \0 002 \0 001 \0 0012660 \0 \0 \n \0 \0 \0 \0 \t \0 \0 \0 \0 \0 002 \0 001 0012700 \0 \0 \0 \v \0 \0 \0 \0 \v \0 \0 \0 \a \0 \0 \0 0012720 \0 \t \0 \0 \0 < \0 \0 \0 \0 \v \0 \0 \0 \0 \0 0012740 002 \0 001 \0 \0 \0 \n \0 \0 \0 \0 \t \0 \0 \0 \0 0012760 \0 002 \0 001 \0 \0 \0 \v \0 \0 \0 \0 \v \0 \0 \0 0013000 \a \0 \0 \0 \0 \t \0 \0 001 @ \0 \0 \0 \0 \v \0 0013020 \0 \0 001 \0 \0 \0 \0 \n \0 \0 \0 I \0 \0 \0 \0 0013040 \v \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 \a \0 \0 \0 0013060 \0 \t \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 B \0 \0 0013100 \0 \0 \v \0 \0 \0 001 \0 \0 \0 \0 \n \0 \0 \0 002 0013120 \0 \0 \0 \0 \v \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 0013140 \b \0 \0 \0 \0 \t \0 \0 \0 \0 \0 002 \0 001 \0 \0 0013160 \0 327 \0 \0 \0 \0 \v \0 \0 \0 \0 \0 002 \0 001 \0 0013200 \0 \0 \n \0 \0 \0 \0 \t \0 \0 \0 \0 \0 002 \0 001 0013220 \0 \0 \0 006 \0 \0 \0 \0 \v \0 \0 \0 \a \0 \0 \0 0013240 \0 \t \0 \0 \0 320 \0 \0 \0 \0 \v \0 \0 \0 \0 \0 0013260 002 \0 001 \0 \0 \0 3 \0 \0 \0 \0 \v \0 \0 \0 \0 0013300 \0 002 \0 001 \0 \0 \0 016 \0 \0 \0 \0 003 \0 \0 \0 0013320 001 \0 \0 \0 \0 \v \0 \0 \0 \0 \0 002 \0 001 \0 \0 0013340 001 R \0 \0 \0 \0 \v \0 \0 \0 \0 \0 002 \0 001 \0 0013360 \0 \0 005 \0 \0 \0 \0 \b \0 \0 \0 001 \0 \0 \0 \0 0013400 \v \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 001 \0 \0 \0 0013420 \0 \n \0 \0 \0 ) \0 \0 \0 \0 \v \0 \0 \v 324 \0 0013440 l z 272 0013443