$ od -c -N 50000 [eris]<LispCore>CML>LAB>CL-IMPLEMENTATION.TEDIT!1
0000000 C o m m o n L i s p I m p l
0000020 e m e n t a t i o n \r A d e s
0000040 c r i p t i o n o f : \r t h e
0000060 e a r l y p a r t o f a
0000100 n e f f o r t a t R u t g
0000120 e r s \r f e a t u r e s o f
0000140 t h e c u r r e n t A I S
0000160 i n h o u s e e f f o r t \r
0000200 c o m p a r i s o n o f R u
0000220 t g e r s a n d l o c a l
0000240 p r o j e c t s \r t h e m a j
0000260 o r f e a t u r e s o f C
0000300 o m m o n L i s p \r s o m e
0000320 i s s u e s b e a r i n g o
0000340 n i n h o u s e v s . c o
0000360 n t r a c t w o r k \r b y R
0000400 o n F i s c h e r , 2 1 - N
0000420 o v - 8 5 \r f i l e : { E R I
0000440 S } < F I S C H E R > C M L > C
0000460 L - I M P L E M E N T A T I O N
0000500 . T E D I T \r A d e s c r i p
0000520 t i o n o f t h e C o m m
0000540 o n L i s p e f f o r t a
0000560 t R u t g e r s m a y h e
0000600 l p u s u n d e r s t a n d
0000620 t h e r e s o u r c e r e
0000640 q u i r m e n t s f o r i m
0000660 p l e m e n t i n g C o m m o
0000700 n L i s p b a s e d o n
0000720 t h e C M U S p i c e L i
0000740 s p s o u r c e s . I t
0000760 a p p e a r s t h i s i s
0001000 w h a t a n i n - h o u s e
0001020 e f f o r t a t A I S w
0001040 o u l d n e e d t o d o
0001060 t o i m p l e m e n t a X
0001100 e r o x C o m m o n L i s p
0001120 w i t h i n t h e d e a d
0001140 l i n e w e ' v e b e e n
0001160 g i v e n . S o m e o f
0001200 t h e m a j o r f e a t u r
0001220 e s o f C o m m o n L i s
0001240 p a r e d e s c r i b e d ,
0001260 i n d i c a t i n g t h e i
0001300 r d i f f i c u l t y o f
0001320 i m p l e m e n t a t i o n a
0001340 n d p e r f o r m a n c e .
0001360 A f e w c o m m e n t s
0001400 h a v e b e e n g a t h e r
0001420 e d o n t h e m e r i t s
0001440 o f i n - h o u s e v s .
0001460 e x t e r n a l i m p l e m
0001500 e n t a t i o n . A b r o
0001520 a d l y b a s e d e s t i m
0001540 a t i o n o f t h e m a n
0001560 p o w e r r e q u i r e d t
0001600 o i m p l e m e n t X e r o
0001620 x C o m m o n L i s p i s
0001640 i n c l u d e d . \r T h e e
0001660 f f o r t a t R u t g e r s
0001700 , a c o n d e n s e d h i
0001720 s t o r y \r S o m e t i m e i
0001740 n 1 9 8 0 t h e R u t g e
0001760 r s U n i v e r s i t y L a
0002000 b f o r C S R e s e a r c
0002020 h w a s g i v e n a g r
0002040 a n t b y D E C t o p r
0002060 o d u c e a n e x t e n d e
0002100 d a d d r e s s i n g v e r
0002120 s i o n o f L i s p f o r
0002140 T O P S - 2 0 . T h e c
0002160 h o i c e b e t w e e n t h
0002200 e , t h e n e m e r g i n g
0002220 , C o m m o n L i s p o r
0002240 , e s t a b l i s h e d I n
0002260 t e r l i s p d i a l e c t s
0002300 w a s r e s o l v e d i n
0002320 f a v o r o f C o m m o n
0002340 L i s p . I w a s w o
0002360 r k i n g p a r t - t i m e
0002400 f o r D r . C h a r l e s
0002420 L . H e d r i c k , d i r e
0002440 c t o r o f t h e l a b
0002460 , d o i n g m i n o r b i
0002500 t s o f L i s p w o r k
0002520 a t t h a t t i m e . A
0002540 f t e r m y g r a d u a t i
0002560 o n t h e p o s i t i o n
0002600 b e c a m e f u l l t i m e
0002620 a n d w e b e g a n i m
0002640 p l e m e n t i n g C o m m o
0002660 n L i s p . \r D r . H e d r
0002700 i c k a n d J o S H H a l
0002720 l h a d j u s t c o m p l
0002740 e t e d i m p l e m e n t i n
0002760 g a n " e x t e n d e d a
0003000 d d r e s s i n g " v e r s i
0003020 o n o f R u t g e r s / U C
0003040 I l i s p , d o n e t o
0003060 i n d i c a t e f e a s a b i
0003100 l i t y f o r t h e g r a
0003120 n t . U C I L i s p i s
0003140 b a s e d o n L i s p 1
0003160 . 6 ; R i c k L a f a i v r
0003200 e ( a s R u t g e r s u n
0003220 d e r g r a d u a t e ) i m p
0003240 r o v e d t h e u s e r i
0003260 n t e r f a c e t o c r e a
0003300 t e " R u t g e r s L i s p
0003320 . " \r T h e g r o u p w h i
0003340 c h w a s t o i m p l e m
0003360 e n t t h e s y s t e m :
0003400 \r D r . H e d r i c k , o c
0003420 c a s i o n a l l y l e n d i
0003440 n g a h a n d \r J o S H H
0003460 a l l , w o r k i n g o n
0003500 i t a b o u t 2 5 % o f
0003520 t h e t i m e \r m y s e l f ,
0003540 f u l l t i m e \r I n 1 9
0003560 8 1 C o m m o n L i s p ' s
0003600 s p e c i f i c a t i o n s
0003620 w e r e n o t e n t i r e l
0003640 y c l e a r . T h e d e
0003660 s i g n g r o u p w a s s
0003700 t i l l a r g u i n g i n t
0003720 e r m i n a b l y v i a m a
0003740 i l o n t h e a r p a n e
0003760 t . I t w a s u n c l e
0004000 a r w h e t h e r t h e r e
0004020 w a s a n y " g r o u n d
0004040 t o s t a n d o n " i n
0004060 t h e e a r l y s p e c ,
0004100 s u c h t h a t w e w o
0004120 u l d n o t h a v e t o
0004140 t h r o w a w a y c o d e
0004160 d u e t o t h e n e a r
0004200 f u r o r a m o n g t h e
0004220 C o m m o n L i s p d e s i
0004240 g n e r s . \r F o r t u n a t e
0004260 l y t h e g r o u p c o o
0004300 r d i n a t i n g t h e C o
0004320 m m o n L i s p e f f o r t
0004340 a t C a r n e g i e - M e l
0004360 l o n U n i v e r s i t y w
0004400 a s s i m u l t a n e o u s l
0004420 y i m p l e m e n t i n g a
0004440 p u b l i c d o m a i n v
0004460 e r s i o n o f e x t e n d
0004500 e d C o m m o n L i s p ,
0004520 w r i t t e n i n i t s e l
0004540 f . T h e s o f t w a r e
0004560 w a s i n i t i a l l y w
0004600 r i t t e n u s i n g M a c
0004620 L i s p e x t e n d e d t o
0004640 l o o k l i k e C o m m o
0004660 n L i s p . T h e C M U
0004700 s y s t e m w a s c a l l
0004720 e d " S p i c e L i s p "
0004740 a n d p r o d u c e d b y
0004760 t e c o d e s f o r a n i
0005000 n s t r u c t i o n s e t m
0005020 i c r o c o d e d o n P E R
0005040 Q m a c h i n e s . \r I t w
0005060 a s c l e a r t o u s t
0005100 h e q u i c k e s t r o u t
0005120 e t o a w o r k i n g s
0005140 y s t e m w i t h m i n i m
0005160 a l w a s t e d e f f o r t
0005200 w a s t o b u l d o n
0005220 t h e c o d e a v a i l i b
0005240 l e f r o m C M U ; t o
0005260 c o n v e r t t h e c o m p
0005300 i l e d S p i c e b y t e c
0005320 o d e s i n t o s o m e t h
0005340 i n g t h a t R u t g e r s
0005360 L i s p c o u l d l o a d
0005400 a n d r u n . T h e t
0005420 a s k o f w r i t i n g t
0005440 h e c o n v e r t o r , f o
0005460 l l o w i n g t h e c h a n
0005500 g e s b e i n g m a d e t
0005520 o S p i c e , a n d t w i
0005540 s t i n g b o t h t h e
0005560 S p i c e a n d R u t g e r
0005600 s L i s p s o u r c e s i
0005620 n t o l i n e f e l l t o
0005640 m e . \r T h e m a j o r i t
0005660 y o f m y w o r k w a s
0005700 i n d e s i g n i n g t h
0005720 e s t a c k m a c h i n e
0005740 b y t e c o d e t o r e g i
0005760 s t e r m a c h i n e i n s
0006000 t r u c t i o n c o n v e r t
0006020 e r . S i m u l t a n e o u
0006040 s l y , s u i t a b l e m e
0006060 c h a n i s m s f o r f u n
0006100 c t i o n c a l l i n g a n
0006120 d m u l t i p l e v a l u e
0006140 r e t u r n h a d t o b
0006160 e i m p l e m e n t e d .
0006200 M a k i n g t h e e f f o r
0006220 t a b i t h a r d e r w
0006240 a s t h e p r o b l e m o
0006260 f n e w v e r s i o n s o
0006300 f S p i c e . A p p r o x
0006320 i m a t e l y e v e r y t w
0006340 o m o n t h s I w o u l d
0006360 F T P c o r r e c t e d a
0006400 n d e x t e n d e d s o u r
0006420 c e s f r o m C M U . R
0006440 e i n t e g r a t i n g l o c
0006460 a l c h a n g e s t o t h
0006500 i s c o d e w a s a t i
0006520 m e c o n s u m i n g t a s
0006540 k , a s w e w e r e w o
0006560 r k i n g b e l o w w h a t
0006600 a n y o n e c o u l d c o
0006620 n s i d e r a " s t a n d a
0006640 r d p r o g a m m i n g i n
0006660 t e r f a c e . " C h u c k
0006700 H e d r i c k c o v e r e d
0006720 m a j o r s t r u c t u r a
0006740 l c h a n g e s t o t h e
0006760 R u t g e r s L i s p M I
0007000 D A S a s s e m b l y c o d
0007020 e . J o S H H a l l c o
0007040 n t r i b u t e d i d e a s
0007060 p r i m a r i l y . T h e
0007100 e f f o r t r e s u l t e d
0007120 i n a r e l e a s e i n
0007140 l a t e 1 9 8 2 w i t h
0007160 a c o r r e c t e d v e r s
0007200 i o n i n e a r l y 1 9 8
0007220 3 . \r C u r r e n t C o m m o
0007240 n L i s p i m p l e m e n t
0007260 a t i o n s t r a t e g y a
0007300 t A I S \r A s I u n d e r
0007320 s t a n d i t , a s i m p
0007340 l e p l a n h a d e v o l
0007360 v e d a m o n g t h e t e
0007400 c h n i c a l s t a f f w
0007420 h i c h w o u l d g r a d u
0007440 a l l y m a k e C o m m o n
0007460 L i s p a v a i l a b l e
0007500 o v e r t h e c o u r s e
0007520 o f a f e w r e l e a s e
0007540 s . U s e o f t h e S
0007560 p i c e c o d e w a s t o
0007600 b e a v o i d e d a s m
0007620 u c h a s p o s s i b l e .
0007640 H o w e v e r , t h e a
0007660 n n o u n c e m e n t o f 2
0007700 Q 8 6 a s a d e a d l i n
0007720 e f o r t h e r e l e a s
0007740 e o f X e r o x C o m m o
0007760 n L i s p s e e m e d t o
0010000 p r e c l u d e a n e a s
0010020 i l y p a c e d d e v e l o
0010040 p m e n t e f f o r t . \r I n
0010060 l i g h t o f t h e d e
0010100 a d l i n e a r e a s o n a
0010120 b l e m o d i f i c a t i o n
0010140 o f t h e p l a n , a s
0010160 s u m i n g a b o u t 4
0010200 p e o p l e w o r k i n g o
0010220 n i t , w o u l d b e t
0010240 o i m p o r t a s m u c h
0010260 o f t h e S p i c e c o
0010300 d e a s p o s s i b l e .
0010320 T h i s c o u l d b r i n
0010340 g u s t o a r e l e a s
0010360 e w i t h a c o m p l e t
0010400 e C o m m o n L i s p , b
0010420 u t o n e w h o s e p e r
0010440 f o r m a n c e w a s r a t
0010460 h e r l o w . I b e l i
0010500 e v e t h a t c o n t r a c
0010520 t i n g o u t t h e w o r
0010540 k a t t h i s t i m e w
0010560 o u l d r e t u r n a b o u
0010600 t t h e s a m e r e s u l
0010620 t , p l u s a d d i t i o n
0010640 a l d i s a d v a n t a g e s
0010660 ( s e e b e l o w ) . \r G i
0010700 v e n a d d i t i o n a l r
0010720 e s o u r c e s t h e p l a
0010740 n m i g h t b e m o d i f
0010760 i e d t o f i r s t b r i
0011000 n g o v e r m u c h o f
0011020 t h e S p i c e c o d e a
0011040 n d t h e n r e p l a c e
0011060 p a r t s o f i t o n t
0011100 h e b a s i s o f p e r f
0011120 o r m a n c e m e a s u r e m
0011140 e n t s . T h i s w o u l
0011160 d g i v e u s a f a l l
0011200 b a c k p o s i t i o n a n
0011220 d a l l o w a d d i t i o n
0011240 a l p e o p l e t o b e
0011260 u s e d t o i m p r o v e
0011300 t h e i m p l e m e n t a t i
0011320 o n a s p o s s i b l e . \r
0011340 R u t g e r s e x p e r i e n
0011360 c e v s . o u r p l a n s
0011400 \r S i m i l a r i t i e s i n
0011420 b o t h p r o j e c t s i
0011440 n c l u d e : \r S t a r t i n g
0011460 w i t h a n e x i s i t i
0011500 n g l i s p \r U s i n g t h
0011520 e C M U S p i c e L i s p
0011540 c o d e \r F e w r e s o u r
0011560 c e s \r P o s i t i v e d i f
0011600 f e r e n c e s i n c l u d e
0011620 : \r C o m m o n L i s p i s
0011640 a f i x e d s p e c , t
0011660 h u s t h e r e i s n o
0011700 n e e d t o r e i n t e g r
0011720 a t e n e w r e l e a s e s
0011740 . \r T h r e e y e a r s o f
0011760 i m p r o v e m e n t i n t
0012000 h e q u a l i t y o f S p
0012020 i c e L i s p . \r N e g a t i
0012040 v e d i f f e r e n c e s : \r
0012060 R u t g e r s q u a l i t y
0012100 c o n s t r a i n t w a s l
0012120 o w e r t h a n o u r s ;
0012140 i t d i d n o t i n c l
0012160 u d e t e s t i n g a n d
0012200 d o c u m e n t a t i o n . \r R
0012220 u t g e r s f o c u s s e d
0012240 e f f o r t m a i n l y o n
0012260 a c o d e t r a n s l a t
0012300 o r / g e n e r a t o r . \r
0012320 E s t i m a t i o n o f t h
0012340 e t i m e i t t a k e s
0012360 t o d o c o d i n g i s ,
0012400 a t b e s t , a n i n e
0012420 x a c t a n d s o m e w h a
0012440 t m y s t i c a l s c i e n
0012460 c e . I n a n o r g a n
0012500 i z a t i o n w i t h e a s
0012520 i l y q u a n t i f i a b l e
0012540 p a s t e f f o r t t o
0012560 m e a s u r e a g a i n s t
0012600 t h i s m i g h t b e b e
0012620 p o s s i b l e t o s o m
0012640 e d e g r e e o f a c c u
0012660 r a c y . I n t u i t i v e
0012700 l y , I b e l i e v e t h
0012720 a t i t w o u l d t a k e
0012740 u s a p p r o x i m a t e l
0012760 y t h e s a m e e f f o r
0013000 t t h a t R u t g e r s p
0013020 u t o u t , p l u s " a
0013040 w e e b i t m o r e , " b
0013060 a l a n c i n g f o u r f u
0013100 l l t i m e p e o p l e h
0013120 e r e a g a i n s t a d d i
0013140 t i o n a l t i m e a t R
0013160 u t g e r s , a n d a c c o
0013200 u n t i n g f o r t h e o
0013220 v e r h e a d o f d o c u m
0013240 e n t a t i o n . \r C o m m o n
0013260 L i s p : t h e p r i m a
0013300 r y f e a t u r e s \r C o m m
0013320 o n L i s p d i f f e r s
0013340 f r o m I n t e r l i s p i
0013360 n s e v e r a l m a j o r
0013400 a n d m a n y m i n o r w
0013420 a y s . I f a m o r e
0013440 d e t a i l e d p l a n o f
0013460 p r o g r e s s c h a r t i
0013500 n g i s t o b e d e v e
0013520 l o p e d t h i s i n f o r
0013540 m a t i o n m a y b e o f
0013560 h e l p . S o m e s u b
0013600 s y s t e m s o f C o m m o
0013620 n L i s p a r e n o t m
0013640 e n t i o n e d b e l o w ,
0013660 s u c h a s t h e S t r u
0013700 c t u r e s y s t e m , c h
0013720 a r a c t e r s , e t c . b
0013740 e c a u s e t h e y a r e
0013760 e i t h e r a l r e a d y i
0014000 m p l e m e n t e d o r h a
0014020 v e a t r i v i a l i m p
0014040 l e m e n t a t i o n ( w e
0014060 h o p e ) . \r C o m m o n L O
0014100 O P S a n d s t r u c t u r
0014120 e s \r I t a p p e a r s t h
0014140 a t C o m m o n L O O P S
0014160 w i l l b e c o m e a s t
0014200 a n d a r d . A p o r t a
0014220 b l e v e r s i o n h a s
0014240 b e e n i m p l e m e n t e d
0014260 a t P A R C a n d p e r
0014300 f o r m a n c e t u n i n g
0014320 o f a n I n t e r l i s p -
0014340 D v e r s i o n i s n o w
0014360 u n d e r w a y . T h e
0014400 s t r u c t u r e f e a t u r
0014420 e r e q u i r e s e x t e n
0014440 s i v e c l e a n u p . \r A r
0014460 r a y s \r C o m m o n L i s p
0014500 s t y l e a r r a y s s u
0014520 p p o r t u n u s u a l f e
0014540 a t u r e s a n d a r e a
0014560 c e n t e r o f a t t e n
0014600 t i o n i n t h e p e r f
0014620 o r m a n c e a r e n a .
0014640 W e c u r r e n t l y h a v
0014660 e a n i m p l e m e n t a t
0014700 i o n o f C o m m o n L i
0014720 s p a r r a y s , w h i c h
0014740 i s c o m p l e t e i n
0014760 i t s e l f b u t n o t f
0015000 u l l y i n t e g r a t e d
0015020 w i t h o l d e r I n t e r
0015040 l i s p a r r a y - l i k e
0015060 s t r u c t u r e s . T h i
0015100 s f e a t u r e i s c o m
0015120 p l e t e d a n d a w a i t
0015140 s i m p l e m e n t a t i o n
0015160 o f m i c r o c o d e t o
0015200 i m p r o v e p e r f o r m
0015220 a n c e . W h e n p o s s
0015240 i b l e , b e t t e r i n t
0015260 e g r a t i o n w i t h I n
0015300 t e r l i s p w i l l b e
0015320 a t t e m p t e d . \r P a c k a
0015340 g e s \r T h i s i s a n e
0015360 n a b l i n g f e a t u r e
0015400 o f C o m m o n L i s p ,
0015420 a s i t a l l o w s a f
0015440 l e x i b l e d i v i s i o n
0015460 o f I n t e r l i s p a n
0015500 d C o m m o n L i s p n a
0015520 m e s p a c e s ( o b l i s
0015540 t s ) . F u n c t i o n s
0015560 o f t h e s a m e n a m e
0015600 i n I n t e r l i s p - D
0015620 a n d X e r o x C o m m o n
0015640 L i s p w i l l b e d i
0015660 f f e r e n t a n d c a n
0015700 b e s p e c i f i e d b y
0015720 a p r e f i x , e g I N T
0015740 E R L I S P : E R R O R o r
0015760 C O M M O N - L I S P : E R R O
0016000 R . T h i s s o f t w a r
0016020 e h a s b e e n s t a r t
0016040 e d . D i f f i c u l t y
0016060 i n i t s i m p l e m e n t
0016100 a t i o n l i e s i n i
0016120 n t e g r a t i n g i t w i
0016140 t h t h e F i l e P a c k
0016160 a g e a n d e x i s t i n g
0016200 I n t e r l i s p R e a d e
0016220 r a n d P r i n t e r . \r M
0016240 u l t i p l e v a l u e s \r C
0016260 o m m o n L i s p a l l o w
0016300 s f u n c t i o n s t o r
0016320 e t u r n m o r e t h a n
0016340 o n e v a l u e . T h e
0016360 t r o u b l e s o m e a s p e
0016400 c t o f t h i s i s t h
0016420 a t i f t h e r e c e i
0016440 v i n g f u n c t i o n e x
0016460 p e c t e d a s i n g l e
0016500 v a l u e t h e a d d i t i
0016520 o n a l o n e s a r e d i
0016540 s c a r d e d . T h e r e
0016560 i s c u r r e n t l y a l
0016600 o w p e r f o r m a n c e s
0016620 i m u l a t i o n o f t h i
0016640 s b e h a v i o r . H o w
0016660 e v e r , b e c a u s e t h
0016700 e C o m m o n L i s p s y
0016720 s t e m f u n c t i o n s u
0016740 s e m u l t i p l e v a l u
0016760 e s t h e m s e l v e s , o
0017000 v e r a l l s y s t e m p e
0017020 r f o r m a n c e w o u l d
0017040 b e s e v e r l y i m p a c
0017060 t e d . T h i s i s a n
0017100 i m p o r t a n t f e a t u
0017120 r e b u t m i g h t b e
0017140 d e l a y e d i f f u r t h
0017160 e r a n a l y s i s s h o w
0017200 s t h e s c h e d u l e i
0017220 s t o o t i g h t . \r L e x
0017240 i c a l c l o s u r e s \r C o
0017260 m m o n L i s p r e q u i r
0017300 e s t h e c r e a t i o n
0017320 o f l e x i c a l c l o s u
0017340 r e o b j e c t s i n t h
0017360 e F U N C T I O N q u o t i
0017400 n g c o n v e n t i o n .
0017420 T h i s r e q u i r e s a
0017440 s h o r t a n a l y s i s o
0017460 f a C o m m o n L i s p
0017500 f u n c t i o n t o d e t e
0017520 r m i n e w h a t f r e e
0017540 v a r i a b l e s w i t h i n
0017560 i t n e e d t o b e "
0017600 c l o s e d o v e r . " T
0017620 h e r e a r e s o m e g e
0017640 n e r a l t e c h n i q u e s
0017660 f o r c r e a t i n g c l
0017700 o s u r e o b j e c t s , b
0017720 u t t h e a n a l y s i s
0017740 o f c o d e w i l l b e
0017760 s l i g h t l y t r i c k y
0020000 a n d t a k e s o m e t i
0020020 m e t o i m p l e m e n t .
0020040 T h e r e i s c u r r e
0020060 n t l y s u p p o r t i n
0020100 I n t e r l i s p - D f o r
0020120 c r e a t i n g a c l o s u
0020140 r e - l i k e o b j e c t g
0020160 i v e n t h a t o n e k n
0020200 o w s w h i c h f r e e v
0020220 a r i a b l e s w h i c h n
0020240 e e d t o b e c l o s e d
0020260 o v e r . \r L e x i c a l s
0020300 c o p i n g \r C o m m o n L i
0020320 s p i s l e x i c a l l y
0020340 s c o p e d , m e a n i n g
0020360 t h a t l o c a l v a r i a
0020400 b l e s a r e o n l y a c
0020420 c e s s a b l e w h e n t h
0020440 e i r r e f e r e n c e s a
0020460 r e v i s i b l y a n d t
0020500 e x t u a l l y n e s t e d
0020520 w i t h i n a d e f i n i n
0020540 g f o r m . T o i m p l
0020560 e m e n t t h i s r e q u i
0020600 r e s a s o m e w h a t c
0020620 l e v e r m o d i f i c a t i
0020640 o n t o t h e v a r i a b
0020660 l e b i n d i n g s e a r c
0020700 h m e c h a n i s m . T h
0020720 i s w i l l r e q u i r e
0020740 s o m e o f a w i z a r d
0020760 ' s t i m e t o i m p l e
0021000 m e n t p r o p e r l y .
0021020 I t i s r e q u i r e d f
0021040 o r o u r v e r s i o n t
0021060 o b e c a l l e d a r
0021100 e a l C o m m o n L i s p .
0021120 \r F i l e s y s t e m i n t
0021140 e r f a c e a n d S t r e a
0021160 m s \r I n t e r l i s p h a s
0021200 a r i c h s e t o f f
0021220 i l e s y s t e m a n d s
0021240 t r e a m o p e r a t i o n s
0021260 . T h e C o m m o n L i
0021300 s p f u n c t i o n s c a n
0021320 l a r g e l y b e i m p l
0021340 e m e n t e d w i t h c a l
0021360 l s i n t o t h e e x i s
0021400 t i n g I n t e r l i s p c
0021420 o d e . H o w e v e r , a
0021440 n e w t y p e o f s t r
0021460 e a m , c a l l e d a " s
0021500 y n o n y m s t r e a m " n
0021520 e e d s t o b e c r e a t
0021540 e d . I a m n o t f a
0021560 m i l i a r w i t h t h e
0021600 I n t e r l i s p s t r e a m
0021620 c o d e , b u t I b e l
0021640 i e v e t h i s w o u l d
0021660 r e q u i r e l a r g e l y
0021700 o r i g i n a l c o d e . \r R
0021720 e a d e r / P r i n t e r \r C o
0021740 m m o n L i s p ' s r e a d
0021760 e r a n d p r i n t e r h
0022000 a v e m a n y f e a t u r e
0022020 s n o t i m p l e m e n t e
0022040 d i n I n t e r l i s p .
0022060 T h e s e c a n b e b r
0022100 o u g h t i n d i r e c t l
0022120 y f r o m t h e S p i c e
0022140 c o d e a t f i r s t .
0022160 H o w e v e r , p e r f o r
0022200 m a n c e w i l l p r o b a
0022220 b l y n o t b e v e r y
0022240 g o o d f o r s u c h a
0022260 r e a d e r ; t h i s i s
0022300 a c r i t i c a l p i e c e
0022320 o f t h e s y s t e m .
0022340 W h i l e n o t n e c c e
0022360 s s a r y i t i s h i g h
0022400 l y d e s i a b l e f o r
0022420 u s t o h a v e a h i g
0022440 h p e r f o r m a n c e v e
0022460 r s i o n . \r C o m m o n L i
0022500 s p s t y l e L A M B D A s
0022520 \r T h e s e a r e c u r r e
0022540 n t l y i m p l e m e n t e d
0022560 i n a s i m p l e w a y
0022600 u s i n g L A M B D A T R A
0022620 N , b u t w h o s e p e r
0022640 f o r m a n c e a n d i n t
0022660 e g r a t i o n l e v e l i
0022700 s l o w . T h e d e b u
0022720 g g e r f o r i n s t a n c
0022740 e , d o e s n o t k n o w
0022760 e n o u g h a b o u t t h
0023000 e f o r m a t o f t h e
0023020 a r g u m e n t s o f t h e
0023040 s e f u n c t i o n t o d
0023060 i s p l a y t h e m i n a
0023100 b r e a k . T h e C o m
0023120 m o n L i s p f u n c t i o
0023140 n e n t r y m e c h a n i s
0023160 m n e e d s t o b e d i
0023200 f f e r e n t l y h a n d l e
0023220 d , C D R c o d i n g s t
0023240 a c k & R E S T f o r i n
0023260 s t a n c e , a n d b e m
0023300 a d e k n o w n t o t h e
0023320 I n t e r l i s p c o m p i l
0023340 e r t o g a i n r e a s o
0023360 n a b l e p e r f o r m a n c
0023400 e . T h e c o m p i l e r
0023420 w o r k i s s e r i o u s
0023440 b u t c o u l d b e d e
0023460 l a y e d s i n c e t h e r
0023500 e i s a w o r k a b l e
0023520 v e r s i o n n o w . \r N e w
0023540 p r i m i t i v e d a t a
0023560 n u m b e r t y p e s \r C e r
0023600 t a i n p r i m i t i v e d
0023620 a t a t y p e s , s u c h a
0023640 s c o m p l e x n u m b e r
0023660 s a n d r a t i o s , n e
0023700 e d t o b e i n t e g r a
0023720 t e d a t a l o w l e v
0023740 e l i n t o t h e a r i t
0023760 h m e t i c c o d e . T r
0024000 a n s c e n d e n t a l f u n
0024020 c t i o n s s u c h a s S
0024040 I N , C O S , e t c . m u
0024060 s t b e m a d e t o w o
0024100 r k f o r c o m p l e x n
0024120 u m b e r s . I n t e g r a
0024140 t i o n o f t h e s e f e
0024160 a t u r e s i n t o I n t e
0024200 r l i s p w o u l d t a k e
0024220 a f a i r a m o u n t o
0024240 f e f f o r t . T r a n s
0024260 p o r t o f t h e S p i c
0024300 e c o d e i n t h e i n
0024320 t e r i m w o u l d b e a
0024340 b e t t e r i d e a . \r C o
0024360 m m o n L i s p s t y l e
0024400 m a c r o s \r T h e c o m p i
0024420 l e r a n d i n t e r p r e
0024440 t e r m a y h a v e t o
0024460 u n d e r s t a n d C o m m o
0024500 n L i s p v s I n t e r l
0024520 i s p c o n t e x t t o h
0024540 a n d l e t h e M a c L i s
0024560 p s t y l e m a c r o d e
0024600 f i n i t i o n s . C o m m
0024620 o n L i s p d o e s n o t
0024640 a l l o w a s y m b o l
0024660 t o h a v e b o t h a f
0024700 u n c t i o n d e f i n i t i
0024720 o n a n d m a c r o d e f
0024740 i n i t i o n , w h i c h i
0024760 s u s e d t h r o u g h o u
0025000 t I n t e r l i s p t o o
0025020 p t i m i z e f u n c t i o n
0025040 s d u r i n g c o m p i l a
0025060 t i o n . \r O v e r a l l i n
0025100 t e g r a t i o n w i t h t
0025120 h e I n t e r l i s p P r o
0025140 g r a m m i n g e n v i r o n
0025160 m e n t \r T h i s i s n e e
0025200 d e d f o r u s t o c
0025220 l a i m I n t e r l i s p ' s
0025240 s t r o n g e s t s e l l i
0025260 n g p o i n t a s a n a
0025300 d v a n t a g e o f X e r o
0025320 x C o m m o n L i s p o v
0025340 e r i t s c o m p e t i t o
0025360 r s . A f a i r a m o u
0025400 n t o f t i m e w i l l
0025420 n e e d t o b e s p e n t
0025440 i n s u r i n g t h a t a
0025460 l l p a r t s o f a S p
0025500 i c e b a s e d i m p l e m
0025520 e n a t i o n d o t h e n
0025540 e e d e d b o o k k e e p i n
0025560 g f o r t h e F i l e P
0025600 a c k a g e , e t c . \r I n -
0025620 h o u s e v s e x t e r n a
0025640 l c o n t r a c t o r \r F r o
0025660 m a s o f t w a r e i m p
0025700 l e m e n t o r ' s v i e w p
0025720 o i n t t h e m a j o r
0025740 f a c t o r s a r e : \r T h e
0025760 c o n s t r a i n t s o n
0026000 a n o u t s i d e o r g a n
0026020 i z a t i o n a r e a l m o
0026040 s t e x a c t l y t h e s
0026060 a m e a s o n u s . \r P o
0026100 o r i n t e g r a t i o n ,
0026120 e x t e r n a l c o n t r a c
0026140 t o r c a n ' t " h o o k
0026160 i n " a s e a s i l y a s
0026200 w e c a n . \r S u p p o r t
0026220 f o r e x t e r n a l l y
0026240 i m p l e m e n t e d s o f t
0026260 w a r e w i l l b e n e c
0026300 c e s s a r i l y m o r e d
0026320 i f f i c u l t . \r a n d . . .
0026340 \r I t w i l l b e v e r y
0026360 e x p e n s i v e . \r T h e
0026400 Q u i n t u s e x p e r i e n
0026420 c e m a y s h e d c o n s
0026440 i d e r a b l e l i g h t o
0026460 n t h e s e a s p e c t s .
0026500 \r C l o s i n g c o m m e n t
0026520 \r O f c o u r s e , I o f
0026540 f e r m y h e l p t o t
0026560 h e d e t a i l e d p l a n
0026600 n i n g a n d o p e r a t i
0026620 o n o f t h i s e f f o r
0026640 t i n a n y w a y p o s
0026660 s i b l e . I r e m a i n
0026700 c o n s e r v a t i v e b e
0026720 c a u s e o f m y n e w n
0026740 e s s i n t h e o r g a n
0026760 i z a t i o n a n d a d e
0027000 s i r e t o d r a w i n
0027020 a s m u c h a i d a s a
0027040 s p o s s i b l e . I b
0027060 e l i e v e t h a t i f w
0027100 e g i v e a b o u t 4 p
0027120 r o g r a m m e r s t h e t
0027140 a s k o f w r i t i n g C
0027160 o m m o n L i s p t h a t
0027200 i t c a n b e d o n e b
0027220 e f o r e t h e d e a d l i
0027240 n e u s i n g S p i c e c
0027260 o d e f o r t h e m a j o
0027300 r i t y o f i t . A d d
0027320 i t i o n a l e f f o r t ,
0027340 o r e a r l y c o m p l e t
0027360 i o n w o u l d a l l o w
0027400 u s t o s i g n i f i c a n
0027420 t l y d e b u g o r p e r
0027440 f o r m a n c e t u n e t h
0027460 e i m p l e m e n a t i o n .
0027500 T h e r e a r e a n u
0027520 m b e r o f r e a s o n s
0027540 n o t t o u s e a n o u
0027560 t s i d e o r g a n i z a t i
0027600 o n f o r t h e w o r k ,
0027620 t h e m o s t i m p o r t
0027640 a n t o f w h i c h a r e
0027660 c o s t ( h i g h ) a n d
0027700 m a i n t a i n a b i l i t
0027720 y o f t h e r e s u l t i
0027740 n g p r o d u c t ( d i f f
0027760 i c u l t a n d l o w ) .
0030000 \r E f f o r t s p e c u l a t
0030020 i o n \r T h e f o l l o w i n
0030040 g i s a n e s t i m a t i
0030060 o n o f t h e a m o u n t
0030100 o f t i m e r e q u i r e
0030120 d t o i m p l e m e n t X
0030140 e r o x C o m m o n L i s p
0030160 . I t i s b a s e d
0030200 o n e f f o r t t o f e a
0030220 t u r e d i f f i c u l t y
0030240 b a s e d o n m y i m p l
0030260 e m e n t a t i o n o f t h
0030300 e C o m m o n L i s p A r
0030320 r a y c o d e a n d t h e
0030340 R u t g e r s e x p e r i e
0030360 n c e i m p l e m e n t i n g
0030400 C o m m o n L i s p . \r B a
0030420 s i s \r T r a n s p o r t o f
0030440 a s m u c h S p i c e c
0030460 o d e a s p o s s i b l e ,
0030500 u s e I n t e r l i s p e
0030520 v a l u a t o r , c o m p i l
0030540 e r , e n v i r o n m e n t ,
0030560 e t c . N e e d c o m p
0030600 l e t e i m p l e m e n a t i
0030620 o n m o r e t h a n h i g
0030640 h p e r f o r m a n c e .
0030660 G i v e n : d e a d l i n e
0030700 o f e n d o f 2 Q 8 6 . \r
0030720 E f f o r t n e e d e d ( p
0030740 e r f e a t u r e ) \r T h e s
0030760 e n u m b e r s a r e b a
0031000 s e d o n t h e s i z e
0031020 o f t h e e x i s t i n g
0031040 S p i c e c o d e a n d t
0031060 h e a m o u n t o f e f f
0031100 o r t p u t i n t o t h e
0031120 C M L A R R A Y p a c k a g
0031140 e . B e h i n d t h o s e
0031160 e s t i m a t e s I ' m v
0031200 e r y u n s u r e o f i s
0031220 p l a c e d a " ? " \r R e
0031240 a d e r : e x t e n d i n g
0031260 I n t e r l i s p r e a d e r
0031300 : a b o u t 4 m m \r P r i n
0031320 t e r : t r a n s p o r t c
0031340 o d e 1 m m \r S e q u e n c e
0031360 s : t r a n s p o r t S p i
0031400 c e 1 m m \r L e x i c a l s
0031420 c o p i n g : s t a c k f o
0031440 r m a t c h a n g e , i n t
0031460 e r n a l I n t e r l i s p
0031500 s t r u c t u r e c h a n g e
0031520 2 m m ( ? ) \r C l o s u r e
0031540 s : c o d e a n a l y s i s
0031560 a n d i n t e g r a t i o n
0031600 1 m m \r M u l t i p l e v a
0031620 l u e s : s t a c k f o r m
0031640 a t c h a n g e , m i c r o
0031660 c o d e 4 m m \r P a c k a g e
0031700 s : d e e p c h a n g e t
0031720 o a t o m s , i n t e g r a
0031740 t e w i t h I n t e r l i s
0031760 p 4 m m \r A r i t h : t r a
0032000 n s p o r t S p i c e 1 . 5
0032020 m m \r L o w l e v e l n u m
0032040 b e r t y p e s ( r a t i o
0032060 s a n d c o m p l e x ) :
0032100 1 m m \r M a c r o s : 0 . 5 m
0032120 m \r F i l e s y s t e m a n
0032140 d s t r e a m s : 4 m m \r D
0032160 o c u m e n t a t i o n : 4 m
0032200 m \r T i m e l i n e \r R e l e a
0032220 s e e n d o f J u l y .
0032240 J u n e / J u l y b e t a ,
0032260 J u n e a l p h a , b e g
0032300 i n J a n u a r y l e a v i
0032320 n g 5 m o n t h s . \r T o t
0032340 a l s \r R u t g e r s e f f o
0032360 r t h a d , i n 1 8 m o
0032400 n t h s , 1 f u l l t i m e
0032420 f o r 1 8 m m , 1 m e g
0032440 a w i z a r d f o r 2 m m ,
0032460 a n d 1 w i z a r d f o
0032500 r 5 m m , m a k i n g a
0032520 p p r o x i m a t e l y 2 5 m
0032540 m f o r a s i m i l a r
0032560 e f f o r t . \r G i v e n a b
0032600 o u t 4 p e o p l e o v e
0032620 r 5 m o n t h s a n d a
0032640 d d i n g a n a v e r a g e
0032660 e x p e r t i s e f a c t o
0032700 r o f a n a d d i t i o n
0032720 a l 1 . 5 p e o p l e g i
0032740 v e s 5 . 5 x 5 = 2 7
0032760 . 5 m m a s a n o n - c o
0033000 n s e r v a t i v e e s t i m
0033020 a t e . \r A b o v e f e a t u
0033040 r e l i s t i n d i c a t e
0033060 s 2 8 m m o f e f f o r t
0033100 n e e d e d , i n c l u d i
0033120 n g d o c u m e n t a t i o n
0033140 . \r E s t i m a t i n g a c
0033160 o n f i d e n c e l e v e l
0033200 o f p l u s o r m i n u s
0033220 2 5 % , g i v e s n o s
0033240 a f t e y m a r g i n t o
0033260 c o m p l e t e o n t i m e
0033300 . U p p e r e n d o v e
0033320 r r u n a t + 1 . 5 m o
0033340 n t h s w i t h 5 . 5 p e
0033360 r s o n e f f o r t . S o
0033400 u n d s s i m i l a r t o
0033420 K o t o r e l e a s e e f f
0033440 e c t . \r D e s i r a b l e a
0033460 d d t i o n s \r O n c e t h e
0033500 f i r s t d r a f t o f
0033520 X e r o x C o m m o n L i s
0033540 p i s d o n e t h e f o
0033560 l l o w i n g w i l l b e
0033600 d e s i r a b l e t o p r o
0033620 d u c e a n i m p l e m e n
0033640 t a t i o n w h i c h w e
0033660 w i l l b e a b l e t o
0033700 b e n c h m a r k w i t h o u
0033720 t s h a m e : \r I m p r o v e
0033740 d h a n d l i n g a n d i
0033760 n t e g r a t i o n o f l a
0034000 m b d a s ; s t a c k f o r
0034020 m a t c h a n g e , m i c r
0034040 o c o d e 3 m m \r I n i t i a
0034060 l p e r f o r m a n c e t u
0034100 n i n g ; m i c r o c o d e
0034120 a n d c o m p i l e r s u p
0034140 p o r t 6 m m \r \0 \0 \0 \0 \0 005 \0
0034160 004 \0 ( \0 $ \0 $ \0 \0 \0 \n \0 \0 \0 \0 002
0034200 004 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0
0034220 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 ( \0 \0 \0 \0 \0
0034240 \0 \0 \n \0 \0 \0 \0 002 004 \0 \0 \0 \0 \0 \0 \0
0034260 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0
0034300 \0 \0 ( \0 \0 \0 \0 \0 \0 \0 \n \0 \0 \0 \0 002
0034320 003 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0
0034340 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 ( \0 \0 \0 \0 \0
0034360 \0 \0 \0 \0 \0 \0 \0 002 003 \0 \0 \0 \0 \0 \0 \0
0034400 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0
0034420 \0 \0 \0 \0 \0 \0 004 \0 006 \0 024 \0 006 M O D
0034440 E R N \0 016 \0 \0 \0 \0 \0 \0 002 \0 \0 024 \0
0034460 006 M O D E R N \0 \n \0 \0 \0 \0 \0 \0 002
0034500 \0 \0 024 \0 006 M O D E R N \0 \f \0 \0 \0
0034520 \0 \0 \0 \0 \0 \0 024 \0 006 M O D E R N \0
0034540 \f \0 \0 \0 \0 \0 \0 002 \0 \0 024 \0 006 M O D
0034560 E R N \0 \n \0 \0 \0 \0 \0 \0 \0 \0 \0 024 \0
0034600 006 M O D E R N \0 030 \0 \0 \0 \0 \0 \0 002
0034620 \0 \0 \0 \0 \0 \0 002 \0 004 \0 \0 \0 033 \0 \0 \0
0034640 \0 006 \0 \0 \0 \0 \0 002 \0 003 \0 \0 \0 022 \0 \0
0034660 \0 \0 005 \0 \0 \0 \0 \0 002 \0 003 \0 \0 \0 317 \0
0034700 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 002 \0 \0 \0 K
0034720 \0 \0 \0 \0 003 \0 \0 \0 \0 \0 002 \0 002 \0 \0 002
0034740 d \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 002 \0 \0
0034760 \0 * \0 \0 \0 \0 001 \0 \0 \0 001 \0 \0 \0 \0 004
0035000 \0 \0 \0 \0 \0 002 \0 002 \0 \0 001 342 \0 \0 \0 \0
0035020 005 \0 \0 \0 \0 \0 002 \0 002 \0 \0 001 033 \0 \0 \0
0035040 \0 005 \0 \0 \0 \0 \0 002 \0 002 \0 \0 \0 . \0 \0
0035060 \0 \0 005 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 ) \0
0035100 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 /
0035120 \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0
0035140 022 \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 002 \0 \0
0035160 001 < \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 002 \0
0035200 \0 001 205 \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 002
0035220 \0 \0 001 y \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0
0035240 002 \0 \0 002 356 \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002
0035260 \0 002 \0 \0 \0 2 \0 \0 \0 \0 001 \0 \0 \0 001 \0
0035300 \0 \0 \0 004 \0 \0 \0 \0 \0 002 \0 002 \0 \0 001 h
0035320 \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 002 \0 \0 001
0035340 220 \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 002 \0 \0
0035360 001 " \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 002 \0
0035400 \0 \0 \0 \0 \0 \0 001 \0 \0 \0 001 \0 \0 \0 \0
0035420 004 \0 \0 \0 \0 \0 002 \0 002 \0 \0 \0 ' \0 \0 \0
0035440 \0 005 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 \0 \0
0035460 \0 \0 005 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 036 \0
0035500 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 016
0035520 \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 002 \0 \0 \0
0035540 036 \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 001 \0 \0
0035560 \0 P \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 001 \0
0035600 \0 \0 8 \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 002
0035620 \0 \0 \0 026 \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0
0035640 001 \0 \0 \0 _ \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002
0035660 \0 001 \0 \0 \0 A \0 \0 \0 \0 005 \0 \0 \0 \0 \0
0035700 002 \0 002 \0 \0 001 332 \0 \0 \0 \0 005 \0 \0 \0 \0
0035720 \0 002 \0 002 \0 \0 \0 ! \0 \0 \0 \0 001 \0 \0 \0
0035740 001 \0 \0 \0 \0 004 \0 \0 \0 \0 \0 002 \0 002 \0 \0
0035760 001 k \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 002 \0
0036000 \0 \0 033 \0 \0 \0 \0 002 \0 \0 \0 001 \0 \0 \0 \0
0036020 005 \0 \0 \0 \0 \0 002 \0 002 \0 \0 \0 247 \0 \0 \0
0036040 \0 005 \0 \0 \0 001 \0 \0 \0 \0 002 \0 \0 \0 2 \0
0036060 \0 \0 \0 005 \0 \0 \0 001 \0 \0 \0 \0 002 \0 \0 \0
0036100 \0 \0 002 \0 002 \0 \0 \0 006 \0 \0 \0 \0 002 \0 \0
0036120 \0 001 \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 002 \0
0036140 \0 001 246 \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 002
0036160 \0 \0 \0 \b \0 \0 \0 \0 002 \0 \0 \0 001 \0 \0 \0
0036200 \0 005 \0 \0 \0 \0 \0 002 \0 002 \0 \0 001 273 \0 \0
0036220 \0 \0 005 \0 \0 \0 \0 \0 002 \0 002 \0 \0 \0 017 \0
0036240 \0 \0 \0 002 \0 \0 \0 001 \0 \0 \0 \0 005 \0 \0 \0
0036260 \0 \0 002 \0 002 \0 \0 001 356 \0 \0 \0 \0 005 \0 \0
0036300 \0 \0 \0 002 \0 002 \0 \0 \0 021 \0 \0 \0 \0 002 \0
0036320 \0 \0 \0 \0 002 \0 002 \0 \0 002 \t \0 \0 \0 \0 005
0036340 \0 \0 \0 \0 \0 002 \0 002 \0 \0 \0 020 \0 \0 \0 \0
0036360 002 \0 \0 \0 \0 \0 002 \0 002 \0 \0 001 212 \0 \0 \0
0036400 \0 005 \0 \0 \0 \0 \0 002 \0 002 \0 \0 \0 " \0 \0
0036420 \0 \0 002 \0 \0 \0 \0 \0 002 \0 002 \0 \0 001 \ \0
0036440 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 002 \0 \0 \0 016
0036460 \0 \0 \0 \0 002 \0 \0 \0 001 \0 \0 \0 \0 005 \0 \0
0036500 \0 \0 \0 002 \0 002 \0 \0 001 Y \0 \0 \0 \0 005 \0
0036520 \0 \0 \0 \0 002 \0 002 \0 \0 \0 031 \0 \0 \0 \0 002
0036540 \0 \0 \0 001 \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0
0036560 002 \0 \0 002 \f \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002
0036600 \0 002 \0 \0 \0 037 \0 \0 \0 \0 002 \0 \0 \0 001 \0
0036620 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 002 \0 \0 001 q
0036640 \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 002 \0 \0 \0
0036660 030 \0 \0 \0 \0 002 \0 \0 \0 001 \0 \0 \0 \0 005 \0
0036700 \0 \0 \0 \0 002 \0 002 \0 \0 001 / \0 \0 \0 \0 005
0036720 \0 \0 \0 \0 \0 002 \0 002 \0 \0 \0 ? \0 \0 \0 \0
0036740 002 \0 \0 \0 \0 \0 002 \0 002 \0 \0 001 030 \0 \0 \0
0036760 \0 005 \0 \0 \0 \0 \0 002 \0 002 \0 \0 \0 037 \0 \0
0037000 \0 \0 001 \0 \0 \0 001 \0 \0 \0 \0 004 \0 \0 \0 \0
0037020 \0 002 \0 002 \0 \0 \0 @ \0 \0 \0 \0 005 \0 \0 \0
0037040 \0 \0 002 \0 001 \0 \0 \0 Q \0 \0 \0 \0 005 \0 \0
0037060 \0 \0 \0 002 \0 001 \0 \0 \0 K \0 \0 \0 \0 005 \0
0037100 \0 \0 \0 \0 002 \0 001 \0 \0 \0 Q \0 \0 \0 \0 005
0037120 \0 \0 \0 \0 \0 002 \0 002 \0 \0 \0 \a \0 \0 \0 \0
0037140 005 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 033 \0 \0 \0
0037160 \0 005 \0 \0 \0 \0 \0 002 \0 002 \0 \0 \0 E \0 \0
0037200 \0 \0 005 \0 \0 \0 \0 \0 002 \0 002 \0 \0 \0 017 \0
0037220 \0 \0 \0 001 \0 \0 \0 001 \0 \0 \0 \0 004 \0 \0 \0
0037240 \0 \0 002 \0 002 \0 \0 002 260 \0 \0 \0 \0 005 \0 \0
0037260 \0 \0 \0 002 \0 002 \0 \0 \0 023 \0 \0 \0 \0 001 \0
0037300 \0 \0 \0 \0 002 \0 002 \0 \0 \0 372 \0 \0 \0 \0 005
0037320 \0 \0 \0 \0 \0 002 \0 002 \0 \0 \0 005 \0 \0 \0 \0
0037340 002 \0 \0 \0 001 \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002
0037360 \0 002 \0 \0 \0 274 \0 \0 \0 \0 005 \0 \0 \0 \0 \0
0037400 002 \0 002 \0 \0 \0 034 \0 \0 \0 \0 002 \0 \0 \0 \0
0037420 \0 002 \0 002 \0 \0 \0 262 \0 \0 \0 \0 005 \0 \0 \0
0037440 \0 \0 002 \0 001 \0 \0 \0 . \0 \0 \0 \0 005 \0 \0
0037460 \0 \0 \0 002 \0 001 \0 \0 \0 034 \0 \0 \0 \0 005 \0
0037500 \0 \0 \0 \0 002 \0 001 \0 \0 \0 037 \0 \0 \0 \0 005
0037520 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 R \0 \0 \0 \0
0037540 005 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 , \0 \0 \0
0037560 \0 005 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 4 \0 \0
0037600 \0 \0 005 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 = \0
0037620 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 035
0037640 \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0
0037660 1 \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 001 \0 \0
0037700 \0 016 \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 001 \0
0037720 \0 \0 035 \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 001
0037740 \0 \0 \0 023 \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0
0037760 002 \0 \0 \0 \b \0 \0 \0 \0 002 \0 \0 \0 001 \0 \0
0040000 \0 \0 005 \0 \0 \0 \0 \0 002 \0 002 \0 \0 \0 R \0
0040020 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 002 \0 \0 \0 006
0040040 \0 \0 \0 \0 002 \0 \0 \0 001 \0 \0 \0 \0 005 \0 \0
0040060 \0 \0 \0 002 \0 002 \0 \0 \0 224 \0 \0 \0 \0 005 \0
0040100 \0 \0 \0 \0 002 \0 002 \0 \0 \0 235 \0 \0 \0 \0 005
0040120 \0 \0 \0 \0 \0 002 \0 002 \0 \0 \0 M \0 \0 \0 \0
0040140 005 \0 \0 \0 \0 \0 002 \0 002 \0 \0 \0 303 \0 \0 \0
0040160 \0 005 \0 \0 \0 \0 \0 002 \0 002 \0 \0 \0 023 \0 \0
0040200 \0 \0 002 \0 \0 \0 \0 \0 002 \0 002 \0 \0 \0 241 \0
0040220 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0 Q
0040240 \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 001 \0 \0 \0
0040260 ? \0 \0 \0 \0 005 \0 \0 \0 \0 \0 002 \0 001 \0 \0
0040300 8 i \0 327 z 272
0040306