$ od -c -N 50000 [phylum]<LISP>Lyric>Internal>Library>GIVE-AND-TAKE!1
0000000 ( D E F I N E - F I L E - I N F
0000020 O 247 P A C K A G E " I N T E
0000040 R L I S P " 247 R E A D T A B L
0000060 E " X C L " 247 B A S E 1 0
0000100 ) \r 006 001 ( f i l e c r e a t e d
0000120 " 5 - D e c - 8 6 0 5 : 4
0000140 4 : 2 7 " 006 004 { e r i s } < l
0000160 i s p c o r e > i n t e r n a l
0000200 > l i b r a r y > g i v e - a n
0000220 d - t a k e . \ ; 8 006 001 1 6 0
0000240 9 4 \r \r | c h a
0000260 n g e s | | t o : | ( v a
0000300 r i a b l e s * g i v e - a n
0000320 d - t a k e - d i r e c t o r i
0000340 e s * ) \r
0000360 ( f u n
0000400 c t i o n s g i v e - f i l e
0000420 t a k e - f i l e ) \r \r
0000440 | p r e v i o u s | | d
0000460 a t e : | " 2 1 - N o v - 8 6
0000500 1 7 : 4 1 : 5 2 " { e r i s
0000520 } < l i s p c o r e > i n t e r
0000540 n a l > l i b r a r y > g i v e
0000560 - a n d - t a k e . \ ; 7 ) \r \r
0000600 \r ; C o p y r i g h t ( c )
0000620 1 9 8 6 b y X e r o x C
0000640 o r p o r a t i o n . A l l
0000660 r i g h t s r e s e r v e d
0000700 . \r \r ( p r e t t y c o m p r i
0000720 n t g i v e - a n d - t a k e
0000740 c o m s ) \r \r ( r p a q q 006 002
0000760 g i v e - a n d - t a k e c o m
0001000 s 006 001 ( ( c o m m a n d s "
0001020 g i v e ? " " t a k e n ? "
0001040 " g i v e " " t a k e " " s
0001060 t e a l " ) \r
0001100
0001120 ( f u n c t i o n s g i v e
0001140 - o r - t a k e - f i n d a d
0001160 d - d e f a u l t - r e g i s t
0001200 r y s e n d - s t e a l - m e
0001220 s s a g e \r
0001240
0001260 g i v e - f i l
0001300 e t a k e - f i l e t a k e
0001320 n ? ) \r
0001340 ( v
0001360 a r i a b l e s * g i v e - a
0001400 n d - t a k e - d i r e c t o r
0001420 i e s * ) \r
0001440
0001460 ( p r o p f i l e t y p e g
0001500 i v e - a n d - t a k e ) ) ) \r
0001520 \r ( d e f c o m m a n d 006 002 "
0001540 g i v e ? " 006 001 n i l ( t a
0001560 k e n ? : g i v e ? t ) ) \r
0001600 \r \r ( d e f c o m m a n d 006 002
0001620 " t a k e n ? " 006 001 ( & r e s
0001640 t a r g s ) ( c l : a p p l
0001660 y # ' t a k e n ? a r g s )
0001700 ) \r \r \r ( d e f c o m m a n d
0001720 006 002 " g i v e " 006 001 ( & r e s
0001740 t f i l e s ) ( 006 002 f o r 006
0001760 001 f i l e 006 002 i n 006 001 f i
0002000 l e s 006 002 a l w a y s 006 001 (
0002020 g i v e - f i l e f i l e ) )
0002040 ) \r \r \r ( d e f c o m m a n d
0002060 006 002 " t a k e " 006 001 ( & r e s
0002100 t f i l e s ) ( 006 002 f o r 006
0002120 001 f i l e 006 002 i n 006 001 f i
0002140 l e s 006 002 a l w a y s 006 001 (
0002160 t a k e - f i l e f i l e ) )
0002200 ) \r \r \r ( d e f c o m m a n d
0002220 006 002 " s t e a l " 006 001 ( & r e
0002240 s t f i l e s ) ( 006 002 f o r
0002260 006 001 f i l e 006 002 i n 006 001 f
0002300 i l e s 006 002 a l w a y s 006 001
0002320 ( t a k e - f i l e f i l e
0002340 t ) ) ) \r \r \r ( c l : d e f u n
0002360 006 002 g i v e - o r - t a k e -
0002400 f i n d 006 001 ( f i l e n a m e
0002420 ) ( l e t ( ( n a m e ( f
0002440 i n d f i l e f i l e n a m e
0002460 t * g i v e - a n d - t a k
0002500 e - d i r e c t o r i e s * ) )
0002520 \r
0002540
0002560 ) \r
0002600
*
0002640 ( c o n
0002660 d \r
0002700
*
0002740 ( n a m e n a m e ) \r
0002760
*
0003020 ( t (
0003040 c l : f o r m a t t \r
0003060
*
0003120 " ~ A
0003140 d o e s n o t e x i s t a
0003160 n d s o c a n n o t b e
0003200 t a k e n o r g i v e n . ~
0003220 % " \r
0003240
*
0003300 f i l
0003320 e n a m e ) \r
0003340
*
0003400 n i l ) ) ) )
0003420 \r \r \r ( c l : d e f u n 006 002 a
0003440 d d - d e f a u l t - r e g i s
0003460 t r y 006 001 ( n a m e ) \r \r 006
0003500 006 ( * | ; ; ; | " A d d s
0003520 d e f a u l t r e g i s t r y
0003540 t o N A M E i f t h e r
0003560 e i s n ' t o n e t h e r
0003600 e a l r e a d y " ) 006 001 \r (
0003620 c o n d \r ( ( o r ( s
0003640 t r p o s " . " n a m e ) \r
0003660 ( n u l l d
0003700 e f a u l t r e g i s t r y ) )
0003720 \r n a m e ) \r
0003740 ( t ( c o n c a t n a m e
0003760 " . " d e f a u l t r e g i s
0004000 t r y ) ) ) ) \r \r \r ( c l : d e
0004020 f u n 006 002 s e n d - s t e a l
0004040 - m e s s a g e 006 001 ( t h i e
0004060 f a u t h o r f i l e ) (
0004100 l a f i t e . s e n d m e s s a
0004120 g e ( m k s t r i n g ( c l
0004140 : f o r m a t n i l \r
0004160 " S u b
0004200 j e c t : F i l e s t o l e
0004220 n \r T o : ~ A \r \r ~ A j u s
0004240 t s t o l e t h e f i l e
0004260 ~ A f r o m y o u . \r \r \t
0004300 T h e S T E A L c o m m a n
0004320 d " a u t h o r t h i e f
0004340 f i l e ) ) ) ) \r \r \r ( c l : d
0004360 e f u n 006 002 g i v e - f i l e
0004400 006 001 ( f i l e n a m e ) " F
0004420 i n d t h e f i l e n a m
0004440 e d a n d l o o k f o r
0004460 a S T A T U S f i l e a s
0004500 s o c i a t e d w i t h i t
0004520 . I f f o u n d a n d
0004540 t h i s u s e r w r o t e
0004560 i t , t h e n r e m o v e
0004600 i t , t h u s u n l o c k i
0004620 n g t h e f i l e . " \r
0004640 ( l e t ( ( n a m e ( g i
0004660 v e - o r - t a k e - f i n d
0004700 f i l e n a m e ) ) \r
0004720 s t a t u s - s t r e a
0004740 m t a k e n - b y ) \r
0004760 ( c o n d \r
0005000 ( ( n u l l n a m e
0005020 ) \r n i
0005040 l ) \r ( (
0005060 n o t ( s t r e a m p ( s e
0005100 t q s t a t u s - s t r e a m
0005120 ( c a r ( n l s e t q ( o
0005140 p e n s t r e a m ( p a c k f
0005160 i l e n a m e . s t r i n g \r
0005200
*
0005300 ' e x t e n s i o
0005320 n \r
0005340
*
0005420 ' s t a t u
0005440 s \r
0005460
*
0005540 ' v e r s i
0005560 o n 1 ' b o d y n a m e )
0005600 \r
0005620
*
0005700 ' i n p u t n i l ' (
0005720 d o n \ ' t c a c h e ) ) ) ) )
0005740 ) ) \r (
0005760 c l : f o r m a t t " S o r
0006000 r y , b u t y o u c a n '
0006020 t g i v e w h a t y o u
0006040 h a v e n ' t t a k e n . ~ %
0006060 ~ A h a s n o t b e e n
0006100 t a k e n b y a n y o n e ,
0006120 i n c l u d i n g y o u . ~
0006140 % " \r
0006160 n a m e ) \r
0006200 n i l ) \r
0006220 ( ( s t r i n
0006240 g - e q u a l ( s e t q t a
0006260 k e n - b y ( a d d - d e f a
0006300 u l t - r e g i s t r y ( c l
0006320 : r e a d s t a t u s - s t r
0006340 e a m ) ) ) \r
0006360 ( a d d - d
0006400 e f a u l t - r e g i s t r y
0006420 ( u s e r n a m e ) ) )
0006440 006 006 ( * \ ; " W e '
0006460 r e a w i n n e r " ) 006 001 \r
0006500 ( d e l
0006520 f i l e ( c l o s e f s t a
0006540 t u s - s t r e a m ) ) \r
0006560 ( c l : f o r
0006600 m a t t " ~ A i s n o w
0006620 u n l o c k e d . ~ % " n a
0006640 m e ) \r
0006660 t ) \r ( t
0006700
*
0006760 006 006 ( * \ ; " W e ' r e a
0007000 l o s e r " ) 006 001 \r
0007020 ( c l : f o r
0007040 m a t t \r
0007060 " S o r
0007100 r y , b u t y o u c a n '
0007120 t g i v e w h a t y o u
0007140 h a v e n ' t t a k e n . ~ %
0007160 ~ A w a s t a k e n b y
0007200 ~ A o n ~ A . ~ % " \r
0007220
0007240 n a m e t a k e n - b y
0007260 ( c l : r e a d s t a t u s
0007300 - s t r e a m ) ) \r
0007320 ( c l o s e f
0007340 s t a t u s - s t r e a m ) \r
0007360 n i l
0007400 ) ) ) ) \r \r \r ( c l : d e f u n
0007420 006 002 t a k e - f i l e 006 001 (
0007440 f i l e n a m e & o p t i o n
0007460 a l s t e a l ) \r
0007500 \r
0007520 006 006 ( * | ; ; | " F i n d
0007540 t h e g i v e n f i l e a
0007560 n d o p e n a s t a t u s
0007600 f i l e t o b e a s s o
0007620 c i a t e d w i t h i t .
0007640 I f t h e f i l e w e
0007660 o p e n t u r n s o u t t
0007700 o b e v e r s i o n 1 ,
0007720 t h e n w e ' v e g o t t
0007740 h e l o c k a n d w e w
0007760 r i t e o u r n a m e a n
0010000 d t h e d a t e i n t o
0010020 t h e f i l e . O t h e r
0010040 w i s e , s o m e b o d y (
0010060 p o s s i b l y u s ! ) h a
0010100 s a l r e a d y g o t i t
0010120 a n d t h e l o c k c a
0010140 n n o t b e o b t a i n e d
0010160 . " ) 006 001 \r ( r e s e t l s t
0010200 ( p r o g ( ( g r o s s - l
0010220 i s t - h a c k ( l i s t n
0010240 i l n i l t ) ) \r
0010260 n a m
0010300 e s t a t u s - n a m e s t
0010320 a t u s - n a m e - p a r t s
0010340 s t a t u s - v e r s i o n s
0010360 u c c e s s ) \r
0010400 ( c o n d \r
0010420
0010440 ( ( n o t ( c l : s e t
0010460 f n a m e ( g i v e - o r -
0010500 t a k e - f i n d f i l e n a
0010520 m e ) ) ) \r
0010540 ( r e t u
0010560 r n n i l ) ) ) \r
0010600 ( c l : s
0010620 e t f s t a t u s - n a m e
0010640 ( p a c k f i l e n a m e . s t
0010660 r i n g ' e x t e n s i o n
0010700 ' s t a t u s ' v e r s i o n
0010720 n i l \r
0010740
*
0011000 ' b o d y n a m e ) ) \r
0011020
0011040 ( c l : m a c r o l e t \r
0011060 (
0011100 ( s t a t u s - s t r e a m n
0011120 i l ' ( c l : f i r s t g r
0011140 o s s - l i s t - h a c k ) ) \r
0011160
0011200 ( s t a t u s - f u l l -
0011220 n a m e n i l ' ( c l : s e
0011240 c o n d g r o s s - l i s t -
0011260 h a c k ) ) \r
0011300 ( f i n i s
0011320 h e d - n o r m a l l y - p n
0011340 i l ' ( c l : t h i r d g r
0011360 o s s - l i s t - h a c k ) ) )
0011400 \r
0011420 ( r e s e t s a v e n i
0011440 l ( l i s t ( f u n c t i o
0011460 n ( c l : l a m b d a ( n a
0011500 m e g r o s s - l i s t - h a
0011520 c k ) \r \r
0011540 006 006 ( * | ;
0011560 ; | " W e h a v e b e e n
0011600 i n t e r r u p t e d d u r
0011620 i n g p r o c e s s i n g .
0011640 C l o s e a n y o p e n
0011660 s t r e a m s a n d d e l e
0011700 t e t h e s t a t u s f i
0011720 l e w e w e r e m a k i n
0011740 g . " ) 006 001 \r \r
0011760
*
0012040 ( c l : w h e n ( n o t ( f
0012060 i n i s h e d - n o r m a l l y
0012100 - p ) ) \r
0012120
*
0012200 ( c l : f o r m a t t
0012220 \r
0012240
*
0012300 " I n t e r r u p t e d d u r
0012320 i n g p r o c e s s i n g o
0012340 f ~ A . T a k e a b o r
0012360 t e d . ~ % " \r
0012400
*
0012460 n
0012500 a m e ) \r
0012520
*
0012600 ( c l : w h e n ( a n
0012620 d ( n u l l ( s t a t u s -
0012640 f u l l - n a m e ) \r
0012660
*
0012760 ) \r
0013000
*
0013100 ( s t
0013120 r e a m p ( s t a t u s - s t
0013140 r e a m ) \r
0013160
*
0013260 ) ) \r
0013300
*
0013360 006 006 ( * \
0013400 ; \r 006 001 006 006 " I f S T A T
0013420 U S - F U L L - N A M E w a s
0013440 n e v e r s e t , t h e n
0013460 S T A T U S - S T R E A M ,
0013500 i f o p e n , m u s t r e
0013520 f e r t o t h e n e w s
0013540 t a t u s f i l e . " ) 006 001 \r
0013560
*
0013660 ( c l : s e t f (
0013700 s t a t u s - f u l l - n a m e
0013720 ) \r
0013740
*
0014020 (
0014040 f u l l n a m e ( s t a t u s
0014060 - s t r e a m \r
0014100
*
0014220 ) ) ) ) \r
0014240
*
0014320 ( c l : i f ( s t r e
0014340 a m p ( s t a t u s - s t r e
0014360 a m ) ) \r
0014400
*
0014460 ( c l o s
0014500 e f ? ( s t a t u s - s t r e
0014520 a m ) ) ) \r
0014540
*
0014620 ( c l : i f ( n o t
0014640 ( n u l l ( s t a t u s - f
0014660 u l l - n a m e ) ) ) \r
0014700
*
0015000 ( d e l f i l e ( s t a t
0015020 u s - f u l l - n a m e ) ) ) )
0015040 ) \r
0015060
0015100 ) \r
0015120
*
0015160 n a m e g r o s s - l i
0015200 s t - h a c k ) ) \r
0015220 ( c l :
0015240 s e t f ( s t a t u s - s t r
0015260 e a m ) \r
0015300 ( o
0015320 p e n s t r e a m s t a t u s
0015340 - n a m e ' o u t p u t n i
0015360 l ' ( d o n \ ' t c a c h e )
0015400 ) ) \r
0015420 ( c l : s e t f ( s
0015440 t a t u s - f u l l - n a m e )
0015460 \r
0015500 ( f u l l n
0015520 a m e ( s t a t u s - s t r e
0015540 a m ) ) ) \r
0015560 ( c o n d \r
0015600
0015620 ( ( = ( f i l e n a m e
0015640 f i e l d ( s t a t u s - f u
0015660 l l - n a m e ) \r
0015700
0015720 ' v e r s i o
0015740 n ) \r
0015760 1 )
0016000
*
0016040 006 006 ( * \ ; " W e ' r e a
0016060 w i n n e r " ) 006 001 \r
0016100
0016120 ( l e t ( ( u n a m e (
0016140 a d d - d e f a u l t - r e g i
0016160 s t r y ( u s e r n a m e ) )
0016200 ) \r
0016220 ( d
0016240 ( d a t e ) ) ) \r
0016260
0016300 ( c l : f o r m a t
0016320 ( s t a t u s - s t r e a m ) \r
0016340
*
0016400 " ~ S ~ S ~ % " u n a m
0016420 e d ) \r
0016440
0016460 ( c l o s e f ( s t a t u s -
0016500 s t r e a m ) ) \r
0016520
0016540 ( c l : f o r m a t t
0016560 " ~ A i s n o w l o c k
0016600 e d b y ~ A a t ~ A . ~
0016620 % " n a m e u n a m e d )
0016640 ) \r
0016660 ( l e t ( ( r
0016700 o o t n a m e ( r o o t f i l
0016720 e n a m e n a m e ) ) \r
0016740
0016760 i n s t a l l
0017000 e d v e r s i o n ) \r
0017020
0017040 ( c o n d \r
0017060
0017100 ( ( a n d
0017120 ( g e t r o o t n a m e ' f
0017140 i l e ) \r
0017160
0017200 ( n o t ( s
0017220 t r i n g - e q u a l n a m e
0017240 ( s e t q i n s t a l l e d
0017260 v e r s i o n \r
0017300
*
0017360 ( c d a r ( g e t
0017400 r o o t n a m e ' f i l e d a
0017420 t e s ) ) ) ) ) ) \r
0017440
0017460 ( c l : f o r
0017500 m a t t " W a r n i n g :
0017520 F i l e ~ A i s d i f f e
0017540 r e n t f r o m l o a d e d
0017560 f i l e ~ A ~ % " \r
0017600
*
0017640 n a m e i n s t a l l e
0017660 d v e r s i o n ) ) ) ) \r
0017700
0017720 ( c l : s e t f s u c c
0017740 e s s t ) ) \r
0017760 ( t
0020000
*
0020040 006 006 ( * \ ; " W e
0020060 ' r e a l o s e r " ) 006 001 \r
0020100
0020120 ( c l o s e f
0020140 ( s t a t u s - s t r e a m ) )
0020160 \r
0020200 ( d e l f i l
0020220 e ( s t a t u s - f u l l - n
0020240 a m e ) ) \r
0020260 ( c
0020300 l : s e t f ( s t a t u s - s
0020320 t r e a m ) \r
0020340
0020360 ( c a r ( n l s e
0020400 t q ( o p e n s t r e a m (
0020420 p a c k f i l e n a m e . s t r
0020440 i n g ' v e r s i o n 1 '
0020460 b o d y ( \r
0020500
*
0020600 s t a t
0020620 u s - f u l l - n a m e \r
0020640
*
0020760 ) ) \r
0021000
*
0021060 ' i n p u t n i l ' ( d
0021100 o n \ ' t c a c h e ) ) ) ) ) \r
0021120
0021140 ( c o n d \r
0021160
0021200 ( ( n o t (
0021220 s t r e a m p ( s t a t u s -
0021240 s t r e a m ) ) ) \r
0021260
0021300 ( c l : f o r m a t
0021320 t " B a d s i t u a t i o
0021340 n : I l l e g a l v e r s i
0021360 o n s o f t h e s t a t u
0021400 s f i l e e x i s t . ~ & T
0021420 r y a g a i n i n a m o
0021440 m e n t o r t r y t o f
0021460 i x t h e p r o b l e m . ~
0021500 % " \r
0021520
0021540 ) \r
0021560
0021600 ( c l : s e t f s u c
0021620 c e s s n i l ) ) \r
0021640
0021660 ( s t e a l \r
0021700 \r
0021720 006 006 ( * | ; ; | " I f
0021740 w e ' r e g o i n g t o
0021760 s t e a l i t , w e s h o
0022000 u l d s e n d t h e f o r
0022020 m e r l o c k e r a n o t
0022040 i c e . " ) 006 001 \r \r
0022060
0022100 ( c l :
0022120 f o r m a t t " S t e a l i
0022140 n g ~ A ( a n d s e n d i
0022160 n g ~ A a m e s s a g e
0022200 a b o u t i t ) . ~ % " \r
0022220
*
0022260 n a m e ( g e
0022300 t f i l e i n f o ( s t a t u
0022320 s - s t r e a m ) \r
0022340
*
0022400 '
0022420 a u t h o r ) ) \r
0022440
0022460 ( a d d .
0022500 p r o c e s s ` ( s e n d - s
0022520 t e a l - m e s s a g e ' , (
0022540 u s e r n a m e n i l n i l
0022560 t ) \r
0022600
*
0022640 ' , ( g e
0022660 t f i l e i n f o ( s t a t u
0022700 s - s t r e a m ) \r
0022720
*
0023000 ' a u t h o
0023020 r ) \r
0023040
*
0023100 ' , n a m e
0023120 ) ) \r
0023140
0023160 ( c l o s e f ( s t
0023200 a t u s - s t r e a m ) ) \r
0023220
*
0023260 ( d e l f i l e ( f u l l n a
0023300 m e ( s t a t u s - s t r e a
0023320 m ) ) ) \r
0023340
0023360 ( c l : s e t f
0023400 s u c c e s s ( t a k e - f i
0023420 l e f i l e n a m e n i l )
0023440 ) ) \r
0023460 ( (
0023500 p r o g 1 ( n o t ( n l s e
0023520 t q ( l e t ( ( t a k e n -
0023540 b y ( c l : r e a d ( s t a
0023560 t u s - s t r e a m ) ) ) \r
0023600
*
0023660 ( t a k e n - o n ( c
0023700 l : r e a d ( s t a t u s - s
0023720 t r e a m ) ) ) ) \r
0023740
*
0024000 (
0024020 c l : i f ( s t r i n g - e q
0024040 u a l t a k e n - b y ( \r
0024060
*
0024200 a d d - d e f a u l t - r e g i
0024220 s t r y \r
0024240
*
0024340 ( u s e r n a
0024360 m e ) ) ) \r
0024400
*
0024460 ( c l : f o r m a t t \r
0024500
*
0024560 " Y o
0024600 u ' v e a l r e a d y h a d
0024620 ~ A t a k e n , s i n c e
0024640 ~ A . " \r
0024660
*
0024740 n a m e t
0024760 a k e n - o n ) \r
0025000
*
0025060 ( c l : f o r m a t
0025100 t \r
0025120
*
0025160 " S o r r y ,
0025200 b u t ~ A w a s a l r e a
0025220 d y t a k e n b y ~ A o
0025240 n ~ A . ~ % " \r
0025260
*
0025340 n a m
0025360 e t a k e n - b y t a k e n
0025400 - o n ) ) ) ) ) \r
0025420
0025440 ( c l o
0025460 s e f ( s t a t u s - s t r e
0025500 a m ) ) ) \r
0025520
0025540 ( c l : f o r m a t t "
0025560 B a d s i t u a t i o n : O
0025600 n l y a n i l l e g a l s
0025620 t a t u s f i l e e x i s t
0025640 s . ~ % T r y a g a i n i n
0025660 a m o m e n t o r t r y
0025700 t o f i x t h e p r o b
0025720 l e m . ~ % " \r
0025740
0025760 ) \r
0026000
0026020 ( c l : s e t
0026040 f s u c c e s s n i l ) ) \r
0026060
0026100 ( t ( c
0026120 l : s e t f s u c c e s s n
0026140 i l ) ) ) ) ) \r
0026160 ( c l : s e
0026200 t f ( f i n i s h e d - n o r
0026220 m a l l y - p ) \r
0026240
0026260 t ) ) \r
0026300 ( r e t u r n s
0026320 u c c e s s ) ) ) ) \r \r \r ( c l
0026340 : d e f u n 006 002 t a k e n ? 006
0026360 001 ( & k e y ( ( : b y a u
0026400 t h o r ) ) \r
0026420 g i
0026440 v e ? ) ( c o n d \r
0026460
0026500 ( ( n u
0026520 l l a u t h o r ) \r
0026540
0026560 ( s e
0026600 t q a u t h o r ( u s e r n
0026620 a m e ) ) \r
0026640
0026660 ( c o n d \r
0026700
*
0026740 ( ( s t r p o s " . "
0026760 a u t h o r ) \r
0027000
0027020 ( s
0027040 e t q a u t h o r ( s u b s
0027060 t r i n g a u t h o r 1 (
0027100 s u b 1 ( s t r p o s " . "
0027120 a u t h o r ) ) ) ) ) ) \r
0027140
*
0027200 ) \r
0027220
0027240 ( ( o r ( s t r i n g -
0027260 e q u a l a u t h o r " A N
0027300 Y " ) \r
0027320
0027340 ( s t r i n
0027360 g - e q u a l a u t h o r "
0027400 A L L " ) \r
0027420
0027440 ( s t r
0027460 i n g - e q u a l a u t h o r
0027500 " * " ) ) \r
0027520
0027540 ( s e t q a
0027560 u t h o r n i l ) ) ) \r
0027600
0027620 ( | p r i
0027640 n t o u t | t " L o o k i n
0027660 g f o r f i l e s t a k e
0027700 n b y " ( o r a u t h o
0027720 r " a n y " ) \r
0027740
0027760 t )
0030000 \r
0030020 (
0030040 006 002 | f o r | 006 001 d i r 006 002
0030060 | i n | 006 001 * g i v e - a n d
0030100 - t a k e - d i r e c t o r i e
0030120 s * \r
0030140
0030160 006 002 | d o | 006 001 ( r e
0030200 s e t l s t ( l e t ( ( g e
0030220 n ( \ \ g e n e r a t e f i l
0030240 e s ( p a c k f i l e n a m e
0030260 . s t r i n g \r
0030300
*
0030400 ' d i r e c t o r y
0030420 d i r \r
0030440
*
0030540 ' n a m e " * " ' e x t e
0030560 n s i o n \r
0030600
*
0030700 " S T A T U S " ) \r
0030720
*
0031020 ' ( a u t h o r c r e a t i o
0031040 n d a t e ) \r
0031060
*
0031140 ' ( r e s e t
0031160 l s t ) ) ) \r
0031200
*
0031240 n e x
0031260 t t h i s a u t h o r d i r
0031300 p r i n t e d ) \r
0031320
*
0031360 ( 006
0031400 002 | w h i l e | 006 001 ( s e t q
0031420 n e x t ( \ \ g e n e r a t
0031440 e n e x t f i l e g e n ) ) \r
0031460
*
0031540 006 002 | w h e n |
0031560 006 001 ( p r o g n ( s e t q
0031600 t h i s a u t h o r \r
0031620
*
0031720 ( \ \ g e n e r a t e f i l
0031740 e i n f o \r
0031760
*
0032040 g e
0032060 n \r
0032100
*
0032160 ' a u t h o
0032200 r ) ) \r
0032220
*
0032300 ( o r ( n
0032320 u l l a u t h o r ) \r
0032340
*
0032440 ( s t r p o s a u
0032460 t h o r t h i s a u t h o r
0032500 1 \r
0032520
*
0032620 n i l t n i l \r
0032640
*
0032760 u p p e r c a s e a r r a y ) )
0033000 ) \r
0033020
*
0033060 006 002 | d o |
0033100 006 001 ( c o n d \r
0033120
*
0033200 ( ( n o t d
0033220 i r p r i n t e d ) \r
0033240
*
0033320 ( | p r
0033340 i n t o u t | t t "
0033360 " d i r t ) \r
0033400
*
0033460 ( s e t q
0033500 d i r p r i n t e d t ) ) ) \r
0033520
*
0033600 ( | p
0033620 r i n t o u t | t ( f i l e
0033640 n a m e f i e l d \r
0033660
*
0033760 n e x t \r
0034000
*
0034100 ' n a m e ) \r
0034120
*
0034220 1 6 \r
0034240
*
0034320 ( \ \ g e n e
0034340 r a t e f i l e i n f o g e n
0034360 \r
0034400
*
0034460 ' c r e
0034500 a t i o n d a t e ) \r
0034520
*
0034600 4
0034620 0 t h i s a u t h o r ) \r
0034640
*
0034720 ( c o n d
0034740 \r
0034760
*
0035040 ( ( n o t g i v e ? ) \r
0035060
*
0035140 (
0035160 t e r p r i t ) ) \r
0035200
*
0035260 ( ( e q
0035300 ( a s k u s e r n i l n i l
0035320 " G i v e ? " n i l
0035340 \r
0035360
*
0035440 t ) \r
0035460
*
0035560 ' y ) \r
0035600
*
0035660 ( g i v e -
0035700 f i l e ( p a c k f i l e n a
0035720 m e . s t r i n g \r
0035740
*
0036040 ' e x t e n s i o
0036060 n n i l \r
0036100
*
0036200 ' v e r s i o n n i l \r
0036220
*
0036320 ' b o
0036340 d y n e x t ) ) ) ) ) ) ) ) )
0036360 \r \r \r ( d e f g l o b a l v a r
0036400 006 002 * g i v e - a n d - t a k
0036420 e - d i r e c t o r i e s * 006 001
0036440 ' ( " { E R I S } < L I S P C
0036460 O R E > S O U R C E S > " " {
0036500 E R I S } < L I S P C O R E > L
0036520 I B R A R Y > " \r
0036540
*
0036600 " { E R
0036620 I S } < L I S P C O R E > I N T
0036640 E R N A L > L I B R A R Y > "
0036660 \r
0036700
*
0036740 " { E R I S } < L I S P U
0036760 S E R S > L I S P C O R E > "
0037000 \r
0037020
*
0037060 " { E R I S } < L I S P C
0037100 O R E > C M L > T E S T > " )
0037120 ) \r \r \r ( p u t p r o p s 006 002
0037140 g i v e - a n d - t a k e f i
0037160 l e t y p e 006 001 c l : c o m p
0037200 i l e - f i l e ) \r ( p u t p r
0037220 o p s g i v e - a n d - t a k
0037240 e c o p y r i g h t ( " X e
0037260 r o x C o r p o r a t i o n "
0037300 1 9 8 6 ) ) \r ( d e c l a r e
0037320 \ : d o n t c o p y \r ( f
0037340 i l e m a p ( n i l ) ) ) \r s
0037360 t o p \r
0037364