$ od -c -N 50000 [eris]<LispCore>SOURCES>CMLSORT.DCOM!2
0000000 ( F I L E C R E A T E D " 1 7
0000020 - J u l - 8 6 0 0 : 3 0 : 1 1
0000040 " ( " c o m p i l e d o n
0000060 " { E R I S } < L I S P C O R
0000100 E > L I B R A R Y > C M L S O R
0000120 T . ; 1 2 ) \r " 1 5 - J u l -
0000140 8 6 2 3 : 1 7 : 2 1 " " C O
0000160 M P I L E - F I L E d " i n
0000200 " X e r o x L i s p 1 5 - J
0000220 u l - 8 6 . . . " d a t e d
0000240 " 1 5 - J u l - 8 6 2 3 : 4
0000260 0 : 4 7 " ) \r ( F I L E C R E A
0000300 T E D " 2 - J u l - 8 6 1
0000320 7 : 1 7 : 0 4 " { E R I S } <
0000340 L I S P C O R E > L I B R A R Y
0000360 > C M L S O R T . ; 1 2 1 3 6
0000400 8 9 c h a n g e s t o : (
0000420 V A R S \r C M L S O R T C O M
0000440 S ) ( F U N C T I O N S C L
0000460 : S O R T S T A B L E - S O R
0000500 T C L : M E R G E A P P L Y
0000520 - P R E D % % S O R T - V E C
0000540 T O R S O R T - P R E F I X
0000560 A P P L Y - K E Y \r % % S O R
0000600 T - L I S T % % S T A B L E -
0000620 S O R T - V E C T O R % % M E
0000640 R G E - L I S T S * % % M E R
0000660 G E - V E C T O R S * % % M E
0000700 R G E - N O N - S I M P L E - V
0000720 E C T O R S ) ( F N S \r S T
0000740 A B L E - S O R T % % S T A B
0000760 L E - S O R T - V E C T O R %
0001000 % M E R G E - L I S T S * ) (
0001020 P R O P S ( C M L S O R T F
0001040 I L E T Y P E ) ) p r e v i o
0001060 u s d a t e : \r " 1 - J u
0001100 l - 8 6 1 8 : 0 9 : 2 3 " {
0001120 E R I S } < L I S P C O R E > L
0001140 I B R A R Y > C M L S O R T . ;
0001160 1 1 ) \r ( R P A Q Q C M L S O
0001200 R T C O M S ( ( * * " S e
0001220 c t i o n 1 4 . 5 M e r g i
0001240 n g a n d S o r t i n g -
0001260 - B y K e l l y R o a c h
0001300 . " ) ( D E C L A R E : D O
0001320 N T C O P Y \r D O E V A L @ C
0001340 O M P I L E ( F I L E S C M
0001360 L S E Q C O M M O N ) ( F U N
0001400 C T I O N S A P P L Y - K E Y
0001420 A P P L Y - P R E D S O R T
0001440 - P R E F I X ) ) ( F U N C T
0001460 I O N S C L : S O R T \r % %
0001500 S O R T - V E C T O R % % S O
0001520 R T - L I S T ) ( F U N C T I
0001540 O N S S T A B L E - S O R T
0001560 % % S T A B L E - S O R T - V E
0001600 C T O R ) ( F U N C T I O N S
0001620 C L : M E R G E \r % % M E R
0001640 G E - L I S T S * % % M E R G
0001660 E - V E C T O R S * % % M E R
0001700 G E - N O N - S I M P L E - V E
0001720 C T O R S ) ( P R O P F I L
0001740 E T Y P E C M L S O R T ) ) )
0001760 \r e x p a n d - A P P L Y - K E
0002000 Y D 1 \r ( L ( 1 $ $ M A C
0002020 R O - E N V I R O N M E N T 0
0002040 $ $ M A C R O - F O R M ) )
0002060 \0 ! 003 \0 \0 002 @ 002 021 ! 002 H 001 271 H 002
0002100 001 272 g \0 \0 I g \0 \0 I J h 032 032 032 J
0002120 h 032 032 032 032 020 \0 N I L \r ( 2 2 Q
0002140 F U N C A L L 1 6 Q C L : I
0002160 F ) \r ( ) \r ( S E T F - M A C R
0002200 O - F U N C T I O N ( Q U O T
0002220 E A P P L Y - K E Y ) ( Q U
0002240 O T E e x p a n d - A P P L Y
0002260 - K E Y ) ) \r e x p a n d - A P
0002300 P L Y - P R E D D 1 \r ( L (
0002320 1 $ $ M A C R O - E N V I R O
0002340 N M E N T 0 $ $ M A C R O -
0002360 F O R M ) ) \0 G \a \0 \0 002 @ 002 021
0002400 a 006 H 001 271 H 002 Z 001 273 J 002 \ 001 275 L
0002420 002 001 276 g \0 \0 N g \0 \0 M g \0 \0 N I
0002440 h 032 032 032 g \0 \0 N K h 032 032 032 h 032 032
0002460 032 032 g \0 \0 M I K h 032 032 032 032 h 032 032
0002500 032 032 020 \0 N I L \r ( 6 7 Q F U N
0002520 C A L L 5 1 Q F U N C A L L
0002540 4 0 Q F U N C A L L 3 4 Q
0002560 F U N C A L L 3 0 Q C L :
0002600 I F ) \r ( ) \r ( S E T F - M A C
0002620 R O - F U N C T I O N ( Q U O
0002640 T E A P P L Y - P R E D ) (
0002660 Q U O T E e x p a n d - A P P
0002700 L Y - P R E D ) ) \r e x p a n d
0002720 - S O R T - P R E F I X D 1 \r
0002740 ( L ( 1 $ $ M A C R O - E N
0002760 V I R O N M E N T 0 $ $ M A
0003000 C R O - F O R M ) ) \0 006 \0 \0 \0
0003020 002 o \0 \0 \0 020 \0 N I L \r N I L \r (
0003040 3 ( P R O G ( ( S T A C K
0003060 N I L ) ( R E S N I L ) )
0003100 C A L L ( C L : W H E N (
0003120 N U L L L I S T ) ( S E T Q
0003140 R E S N I L ) ( G O R E
0003160 T U R N ) ) ( C L : W H E N
0003200 ( < H E I G H T 1 ) ( S E
0003220 T Q R E S ( R P L A C D (
0003240 P R O G 1 L I S T ( C L : P
0003260 O P L I S T ) ) N I L ) )
0003300 ( G O R E T U R N ) ) ( C L
0003320 : P U S H H E I G H T S T A
0003340 C K ) ( D E C F H E I G H T
0003360 ) ( C L : P U S H ( Q U O T
0003400 E S 1 ) S T A C K ) ( G O
0003420 C A L L ) S 1 ( S E T Q
0003440 H E I G H T ( 1 - ( C A R
0003460 S T A C K ) ) ) ( C L : P U S
0003500 H R E S S T A C K ) ( C L
0003520 : P U S H ( Q U O T E S 2 )
0003540 S T A C K ) ( G O C A L L
0003560 ) S 2 ( S E T Q R E S (
0003600 % % M E R G E - L I S T S * (
0003620 C L : P O P S T A C K ) R E
0003640 S P R E D K E Y ) ) ( S E
0003660 T Q H E I G H T ( C L : P O
0003700 P S T A C K ) ) ( G O R E
0003720 T U R N ) R E T U R N ( C A
0003740 S E ( C L : P O P S T A C K
0003760 ) ( S 1 ( G O S 1 ) ) (
0004000 S 2 ( G O S 2 ) ) ( T (
0004020 R E T U R N R E S ) ) ) ) ) \r
0004040 ( S E T F - M A C R O - F U N C
0004060 T I O N ( Q U O T E S O R T
0004100 - P R E F I X ) ( Q U O T E
0004120 e x p a n d - S O R T - P R E F
0004140 I X ) ) \r C L : S O R T D 1 \r
0004160 ( L ( 0 - a r g s - ) ) \0
0004200 ] \a \0 002 \0 e 021 001 \0 k a 021 Q 006 l 002
0004220 a 272 H l 003 274 273 L d K 363 262 033 277 h 275
0004240 I ^ d 004 l 005 360 247 d o \0 \0 \0 034 262 033
0004260 J M \v \0 \0 020 a g \0 \0 360 225 L k 330 a
0004300 260 337 L l 002 324 \ 260 321 \t \0 \0 264 \t I J
0004320 M \v \0 \0 020 g \0 \0 N o \0 \0 \0 \f \0 \0
0004340 020 \0 ( 1 3 2 Q C H E C K - T Y
0004360 P E - F A I L 1 1 6 Q % % S
0004400 O R T - V E C T O R 1 0 6 Q
0004420 V E C T O R P 5 7 Q % % S O
0004440 R T - L I S T ) \r ( 1 2 2 Q S
0004460 E Q U E N C E 6 4 Q : K E Y
0004500 ) \r ( 1 2 7 Q ( O R L I S
0004520 T V E C T O R ) 4 7 Q ( N
0004540 I L ) ) \r % % S O R T - V E C T
0004560 O R D 1 \r ( L ( 2 K E Y
0004600 1 P R E D 0 V E C T O R )
0004620 ) \0 317 017 \0 \0 003 021 360 016 @ \t \0 \0 k
0004640 325 j h 032 032 270 H 001 H 002 270 [ 275 H 001 H
0004660 002 270 \ 276 B 227 @ L 266 Y k B 016 203 @ L
0004700 266 Y 272 N M \n \0 \0 263 f @ M 266 _ 022 277
0004720 B 225 O 022 k B 016 201 O 022 J l 002 A 016 262
0004740 + @ _ 020 277 N _ 016 277 O 022 O 020 O 016 267
0004760 277 N k 324 ^ M \n \0 \0 263 5 @ N 266 _ 030
0005000 277 J B 233 O 030 k B 016 207 M k 325 275 260 265
0005020 O 030 l 002 A 016 262 333 @ _ 026 277 M _ 024 277
0005040 O 030 O 026 O 024 267 277 M k 325 275 260 227 @ _
0005060 034 277 N _ 032 277 I O 034 O 032 267 277 L N k
0005100 325 375 363 231 L H 032 270 N k 325 H 032 270 K M
0005120 k 324 363 232 M k 324 H 032 270 K H 032 X 200 H
0005140 222 261 377 E @ 020 \0 ( 1 4 0 Q % % =
0005160 5 7 Q % % = 6 C L : L E
0005200 N G T H ) \r N I L \r ( ) \r % % S
0005220 O R T - L I S T D 1 \r ( L (
0005240 2 K E Y 1 P R E D 0 L
0005260 I S T ) ) \0 t 004 \0 \0 003 j 021 1 003
0005300 @ 241 I 020 H k 324 I h 272 @ 243 h [ 260 9
0005320 k H 363 234 @ d 002 b \0 277 d h 031 277 [ 260
0005340 ( H J 032 272 H k 325 270 g \0 \0 J 032 260 333
0005360 g \0 \0 360 262 1 J 001 J 002 272 K A B \f \0
0005400 \0 273 J 001 J 002 272 277 J 001 J 002 272 d g \0
0005420 \0 360 262 336 277 J 001 k 325 270 K J 032 272 g \0
0005440 \0 J 032 260 246 K A B \f \0 \0 271 270 260 223 \0
0005460 ( 1 5 6 Q % % M E R G E - L I
0005500 S T S * 1 0 4 Q % % M E R G
0005520 E - L I S T S * ) \r ( 1 4 4 Q
0005540 S 2 1 2 4 Q S 1 6 6 Q S
0005560 2 5 7 Q S 1 ) \r ( ) \r S T A
0005600 B L E - S O R T D 1 \r ( L (
0005620 0 - a r g s - ) ) \0 ] \a \0 002
0005640 \0 e 021 001 \0 k a 021 Q 006 l 002 a 272 H l
0005660 003 274 273 L d K 363 262 033 277 h 275 I ^ d 004
0005700 l 005 360 247 d o \0 \0 \0 034 262 033 J M \v \0
0005720 \0 020 a g \0 \0 360 225 L k 330 a 260 337 L l
0005740 002 324 \ 260 321 \t \0 \0 264 \t I J M \v \0 \0
0005760 020 g \0 \0 N o \0 \0 \0 \f \0 \0 020 \0 ( 1
0006000 3 2 Q C H E C K - T Y P E - F
0006020 A I L 1 1 6 Q % % S T A B L
0006040 E - S O R T - V E C T O R 1 0
0006060 6 Q V E C T O R P 5 7 Q %
0006100 % S O R T - L I S T ) \r ( 1 2 2
0006120 Q S E Q U E N C E 6 4 Q :
0006140 K E Y ) \r ( 1 2 7 Q ( O R
0006160 L I S T V E C T O R ) 4 7 Q
0006200 ( N I L ) ) \r % % S T A B L E
0006220 - S O R T - V E C T O R D 1 \r
0006240 ( L ( 2 K E Y 1 P R E D
0006260 0 V E C T O R ) ) \0 " 002 \0
0006300 \0 003 @ 021 021 001 @ g \0 \0 \n \0 \0 A B \v
0006320 \0 \0 271 H I g \0 \0 j g \0 \0 h \r 006 \0
0006340 \0 @ 020 \0 ( 3 6 Q C L : R E P L
0006360 A C E 1 7 Q % % S O R T - L
0006400 I S T 1 2 Q C L : C O E R C
0006420 E ) \r ( 3 1 Q : E N D 1 2 5
0006440 Q : S T A R T 1 7 L I S T
0006460 ) \r ( ) \r C L : M E R G E D 1
0006500 \r ( L ( 0 - a r g s - ) )
0006520 001 024 \r \0 002 \0 e 021 001 \0 k a 021 261 \f l
0006540 002 a 272 l 003 a 273 l 004 a 274 H l 005 276 275
0006560 N d M 363 235 277 g \0 \0 _ 016 277 I d 003 263
0006600 027 260 026 a g \0 \0 360 225 N k 330 a 260 354 N
0006620 l 002 324 ^ 260 335 001 _ 020 d g \0 \0 360 262 Z
0006640 277 J _ 022 d 004 l 005 360 263 d o \0 \0 \0
0006660 034 263 030 \t \0 \0 264 \a J \t \0 \0 213 g \0 \0
0006700 O 022 o \0 \0 \0 \f \0 \0 K _ 024 d 004 l 005
0006720 360 263 d o \0 \0 \0 034 263 030 \t \0 \0 264 \a
0006740 K \t \0 \0 213 g \0 \0 O 024 o \0 \0 \0 \f \0
0006760 \0 L O 016 \f \0 \0 020 g \0 \0 360 256 O 020 g
0007000 \0 \0 360 247 O 020 g \0 \0 360 264 ^ J _ 026 d
0007020 004 l 005 360 246 d o \0 \0 \0 034 227 g \0 \0 \n
0007040 \0 \0 260 025 \t \0 \0 264 004 J 213 g \0 \0 O 026
0007060 o \0 \0 \0 \f \0 \0 K _ 030 d 004 l 005 360 246
0007100 d o \0 \0 \0 034 227 g \0 \0 \n \0 \0 260 025 \t
0007120 \0 \0 264 004 K 213 g \0 \0 O 030 o \0 \0 \0 \f
0007140 \0 \0 L O 016 \f \0 \0 020 \0 ( 4 2 1 Q
0007160 % % M E R G E - V E C T O R S *
0007200 4 1 3 Q C H E C K - T Y P E
0007220 - F A I L 3 7 3 Q V E C T O
0007240 R P 3 6 6 Q L I S T - T O -
0007260 V E C T O R * 3 4 0 Q C H E
0007300 C K - T Y P E - F A I L 3 2 0
0007320 Q V E C T O R P 3 1 3 Q L
0007340 I S T - T O - V E C T O R * 2
0007360 4 0 Q % % M E R G E - L I S T
0007400 S 2 3 2 Q C H E C K - T Y P
0007420 E - F A I L 2 1 5 Q V E C T
0007440 O R - T O - L I S T * 2 0 7 Q
0007460 V E C T O R P 1 6 2 Q C H
0007500 E C K - T Y P E - F A I L 1 4
0007520 5 Q V E C T O R - T O - L I S
0007540 T * 1 3 7 Q V E C T O R P )
0007560 \r ( 4 0 2 Q S E Q U E N C E 2
0007600 3 6 3 Q V E C T O R 3 2 7
0007620 Q S E Q U E N C E 1 3 1 0 Q
0007640 V E C T O R 2 6 2 Q S T R
0007660 I N G 2 5 3 Q A R R A Y 2
0007700 4 4 Q V E C T O R 2 2 1 Q
0007720 S E Q U E N C E 2 1 5 1 Q S
0007740 E Q U E N C E 1 1 0 6 Q L I
0007760 S T 6 0 Q : K E Y 4 2 Q
0010000 I D E N T I T Y ) \r ( 4 1 0 Q
0010020 ( O R L I S T V E C T O R
0010040 ) 3 5 6 Q ( N I L ) 3 3 5
0010060 Q ( O R L I S T V E C T O
0010100 R ) 3 0 3 Q ( N I L ) 2 2
0010120 7 Q ( O R L I S T V E C T
0010140 O R ) 2 0 1 Q ( N I L ) 1
0010160 5 7 Q \r ( O R L I S T V E
0010200 C T O R ) 1 3 1 Q ( N I L )
0010220 ) \r % % M E R G E - L I S T S *
0010240 D 1 \r ( L ( 3 K E Y 2
0010260 P R E D 1 L I S T 2 0 L
0010300 I S T 1 ) ) \0 L 002 \0 \0 004 g \0 \0
0010320 h 032 021 021 001 H 271 @ 223 A 253 @ 242 I A 201
0010340 I @ 031 277 H 002 020 C 232 A 001 k C 016 @ 001
0010360 k C 016 203 A 001 @ 001 l 002 B 016 235 I A 031
0010400 277 I 002 271 A 002 b 002 277 260 316 I @ 031 277 I
0010420 002 271 @ 002 b \0 260 302 \0 N I L \r ( 2
0010440 H E A D E R ) \r ( ) \r % % M E R
0010460 G E - V E C T O R S * D 1 \r (
0010500 L ( 3 K E Y 2 P R E D
0010520 1 V E C T O R 2 0 V E C T
0010540 O R 1 ) ) \0 \t \0 \0 \0 004 @ A B C
0010560 \f \0 \0 020 \0 ( 6 % % M E R G E -
0010600 N O N - S I M P L E - V E C T O
0010620 R S ) \r N I L \r ( ) \r % % M E R
0010640 G E - N O N - S I M P L E - V E
0010660 C T O R S D 1 \r ( L ( 3 K
0010700 E Y 2 P R E D 1 V E C T
0010720 O R 2 0 V E C T O R 1 ) )
0010740 \0 314 017 \0 \0 004 @ \t \0 \0 021 341 016 A \t \0
0010760 \0 271 H I 324 Z g \0 \0 @ \t \0 \0 \v \0 \0
0011000 273 j \ ] 276 J L 363 241 K 020 M H \n \0 \0
0011020 262 ( L d J \n \0 \0 222 261 \0 222 277 K _ 020
0011040 277 L _ 016 277 A N 266 O 020 O 016 267 277 L k
0011060 324 274 N k 324 276 260 334 N I \n \0 \0 262 & L
0011100 d J \n \0 \0 263 f 277 K _ 024 277 L _ 022 277
0011120 @ M 266 O 024 O 022 267 277 L k 324 274 M k 324
0011140 275 260 336 C 234 A N 266 k C 016 @ M 266 k C
0011160 016 205 A N 266 @ M 266 l 002 B 016 262 031 K _
0011200 030 277 L _ 026 277 A N 266 O 030 O 026 267 277 N
0011220 k 324 276 260 027 K _ 034 277 L _ 032 277 @ M 266
0011240 O 034 O 032 267 277 M k 324 275 L k 324 274 261 377
0011260 W \0 ( 1 3 6 Q % % = 1 2 6 Q
0011300 % % = 6 1 Q % % = 5 1 Q
0011320 % % = 3 1 Q M A K E - A R
0011340 R A Y 2 6 Q A R R A Y - E L
0011360 E M E N T - T Y P E 1 2 Q C
0011400 L : L E N G T H 3 C L : L E
0011420 N G T H ) \r ( 2 2 Q : E L E M
0011440 E N T - T Y P E ) \r ( ) \r ( P U
0011460 T P R O P S C M L S O R T F
0011500 I L E T Y P E C O M P I L E -
0011520 F I L E ) \r ( P U T P R O P S
0011540 C M L S O R T C O P Y R I G H
0011560 T ( " X e r o x C o r p o r
0011600 a t i o n " 1 9 8 6 ) ) \r S T
0011620 O P \r
0011623