_  __   _  _         _ _     _      _           _           
  __| |/ /_ | || |     __| (_)___| | __ (_)_ __   __| | _____  __
 / _` | '_ \| || |_   / _` | / __| |/ / | | '_ \ / _` |/ _ \ \/ /
| (_| | (_) |__   _| | (_| | \__ \   <  | | | | | (_| |  __/>  < 
 \__,_|\___/   |_|    \__,_|_|___/_|\_\ |_|_| |_|\__,_|\___/_/\_\
                                                                 
            

T.STRINGS

FILE INFORMATION

FILENAME(S): T.STRINGS

FILE TYPE(S): PRG

FILE SIZE: 7K

FIRST SEEN: 2025-11-30 18:05:25

APPEARS ON: 2 disk(s)

FILE HASH

8e82c28e92d00529642c46bd09e76ce51fc0cd4517d3abdb9e0ec4e4b275f69a

FOUND ON DISKS (2 DISKS)

DISK TITLE FILENAME FILE TYPE COLLECTION TRACK SECTOR ACTIONS
LOADSTAR 66 S 1 T.STRINGS PRG Xii 24 4 DOWNLOAD FILE
LOADSTAR 66 S 1 T.STRINGS PRG Sailor, Ganheden 24 4 DOWNLOAD FILE

FILE CONTENT & ANALYSIS

00000000: 00 80 5E 55 3A 5A 45 52  4F 0D 20 20 20 20 20 20  |..^U:ZERO.      |
00000010: 20 20 20 20 C2 D9 D4 C5  D3 3A 20 D3 D4 D2 C9 CE  |    .....: .....|
00000020: C7 20 D3 D0 C5 C5 C4 0D  0D 20 20 20 20 20 20 20  |. .......       |
00000030: 20 20 20 20 20 42 59 20  CD 41 55 52 49 43 45 20  |     BY .AURICE |
00000040: CA 4F 4E 45 53 0D 0D 20  20 20 20 CF 4E 20 CC CF  |.ONES..    .N ..|
00000050: C1 C4 D3 D4 C1 D2 20 23  36 35 20 C9 20 44 45 53  |...... #65 . DES|
00000060: 43 52 49 42 45 44 20 48  4F 57 0D 41 52 52 41 59  |CRIBED HOW.ARRAY|
00000070: 20 56 41 52 49 41 42 4C  45 53 20 41 4E 44 20 53  | VARIABLES AND S|
00000080: 49 4D 50 4C 45 20 56 41  52 49 41 42 4C 45 53 0D  |IMPLE VARIABLES.|
00000090: 57 45 52 45 20 53 54 4F  52 45 44 2E 20 20 C9 4E  |WERE STORED.  .N|
000000A0: 20 54 48 45 20 43 41 53  45 20 4F 46 20 53 54 52  | THE CASE OF STR|
000000B0: 49 4E 47 0D 56 41 52 49  41 42 4C 45 53 20 4F 4E  |ING.VARIABLES ON|
000000C0: 4C 59 20 54 48 45 20 4E  41 4D 45 2C 20 4C 45 4E  |LY THE NAME, LEN|
000000D0: 47 54 48 2C 20 41 4E 44  0D 54 57 4F 20 50 4F 49  |GTH, AND.TWO POI|
000000E0: 4E 54 45 52 53 20 41 52  45 20 53 54 4F 52 45 44  |NTERS ARE STORED|
000000F0: 2E 20 20 D4 48 45 0D 50  4F 49 4E 54 45 52 53 20  |.  .HE.POINTERS |
00000100: 53 48 4F 57 20 57 48 45  52 45 20 54 48 45 20 53  |SHOW WHERE THE S|
00000110: 54 52 49 4E 47 20 49 53  0D 53 54 4F 52 45 44 2E  |TRING IS.STORED.|
00000120: 20 20 D4 48 45 20 41 43  54 55 41 4C 20 53 54 52  |  .HE ACTUAL STR|
00000130: 49 4E 47 53 20 41 52 45  0D 53 54 4F 52 45 44 20  |INGS ARE.STORED |
00000140: 45 49 54 48 45 52 20 49  4E 20 54 48 45 20 43 4F  |EITHER IN THE CO|
00000150: 44 45 20 4F 52 20 41 54  20 54 48 45 0D 54 4F 50  |DE OR AT THE.TOP|
00000160: 20 4F 46 20 C2 C1 D3 C9  C3 20 D2 C1 CD 2C 20 45  | OF ..... ..., E|
00000170: 58 54 45 4E 44 49 4E 47  20 44 4F 57 4E 57 41 52  |XTENDING DOWNWAR|
00000180: 44 2E 0D D4 48 49 53 20  4C 41 54 54 45 52 20 4D  |D...HIS LATTER M|
00000190: 45 54 48 4F 44 20 4F 46  20 53 54 4F 52 41 47 45  |ETHOD OF STORAGE|
000001A0: 20 4C 45 41 44 53 20 54  4F 0D 54 48 45 20 54 4F  | LEADS TO.THE TO|
000001B0: 50 49 43 20 4F 46 20 47  41 52 42 41 47 45 20 43  |PIC OF GARBAGE C|
000001C0: 4F 4C 4C 45 43 54 49 4F  4E 2E 0D 0D 0D 0D 0D 20  |OLLECTION...... |
000001D0: 20 20 20 C9 46 20 54 48  45 20 53 54 52 49 4E 47  |   .F THE STRING|
000001E0: 20 41 50 50 45 41 52 53  20 49 4E 20 54 48 45 20  | APPEARS IN THE |
000001F0: 43 4F 44 45 2C 0D 54 48  45 20 50 4F 49 4E 54 45  |CODE,.THE POINTE|
00000200: 52 53 20 57 49 4C 4C 20  50 4F 49 4E 54 20 49 4E  |RS WILL POINT IN|
00000210: 54 4F 20 54 48 45 20 43  4F 44 45 2C 0D 41 4E 44  |TO THE CODE,.AND|
00000220: 20 4E 4F 20 4E 45 57 20  4D 45 4D 4F 52 59 20 57  | NO NEW MEMORY W|
00000230: 49 4C 4C 20 42 45 20 4E  45 45 44 45 44 2E 0D D3  |ILL BE NEEDED...|
00000240: 54 52 49 4E 47 53 20 43  52 45 41 54 45 44 20 42  |TRINGS CREATED B|
00000250: 59 20 53 54 41 54 45 4D  45 4E 54 53 20 53 55 43  |Y STATEMENTS SUC|
00000260: 48 20 41 53 0D C1 24 3D  22 D4 48 49 53 20 49 53  |H AS..$=".HIS IS|
00000270: 20 41 20 53 54 52 49 4E  47 22 20 41 4E 44 20 53  | A STRING" AND S|
00000280: 54 52 49 4E 47 53 0D 52  45 41 44 20 46 52 4F 4D  |TRINGS.READ FROM|
00000290: 20 44 41 54 41 20 53 54  41 54 45 4D 45 4E 54 53  | DATA STATEMENTS|
000002A0: 20 57 49 4C 4C 20 42 45  0D 53 54 4F 52 45 44 20  | WILL BE.STORED |
000002B0: 54 48 49 53 20 57 41 59  2E 0D 0D 20 20 20 20 D3  |THIS WAY...    .|
000002C0: 54 52 49 4E 47 53 20 49  4E 54 52 4F 44 55 43 45  |TRINGS INTRODUCE|
000002D0: 44 20 49 4E 54 4F 20 54  48 45 0D 50 52 4F 47 52  |D INTO THE.PROGR|
000002E0: 41 4D 20 42 59 20 C7 C5  D4 2C 20 D3 D4 D2 24 2C  |AM BY ..., ...$,|
000002F0: 20 4F 52 20 42 59 0D 43  41 4C 43 55 4C 41 54 49  | OR BY.CALCULATI|
00000300: 4F 4E 2C 20 53 55 43 48  20 41 53 20 C1 24 3D C3  |ON, SUCH AS .$=.|
00000310: 24 2B C4 24 2C 20 41 52  45 0D 53 54 4F 52 45 44  |$+.$, ARE.STORED|
00000320: 20 41 54 20 54 48 45 20  54 4F 50 20 4F 46 20 C2  | AT THE TOP OF .|
00000330: C1 D3 C9 C3 20 D2 C1 CD  2E 20 20 C5 41 43 48 0D  |.... ....  .ACH.|
00000340: 53 55 43 43 45 53 53 49  56 45 20 53 54 52 49 4E  |SUCCESSIVE STRIN|
00000350: 47 20 49 53 20 53 54 4F  52 45 44 20 49 4E 20 54  |G IS STORED IN T|
00000360: 48 45 0D 46 49 52 53 54  20 46 52 45 45 20 41 52  |HE.FIRST FREE AR|
00000370: 45 41 20 43 4F 4E 54 41  49 4E 49 4E 47 20 45 4E  |EA CONTAINING EN|
00000380: 4F 55 47 48 20 52 4F 4F  4D 0D 46 4F 52 20 54 48  |OUGH ROOM.FOR TH|
00000390: 45 20 45 4E 54 49 52 45  20 53 54 52 49 4E 47 2E  |E ENTIRE STRING.|
000003A0: 20 20 D4 48 49 53 20 50  52 4F 43 45 53 53 0D 43  |  .HIS PROCESS.C|
000003B0: 4F 4E 54 49 4E 55 45 53  20 55 4E 54 49 4C 20 54  |ONTINUES UNTIL T|
000003C0: 48 45 20 43 4F 4D 50 55  54 45 52 20 46 49 4E 44  |HE COMPUTER FIND|
000003D0: 53 0D 54 48 41 54 20 54  48 45 20 53 50 41 43 45  |S.THAT THE SPACE|
000003E0: 20 42 45 54 57 45 45 4E  20 54 48 45 20 4C 41 53  | BETWEEN THE LAS|
000003F0: 54 20 53 54 52 49 4E 47  0D 41 4E 44 20 54 48 45  |T STRING.AND THE|
00000400: 20 54 4F 50 20 4F 46 20  41 52 52 41 59 53 20 49  | TOP OF ARRAYS I|
00000410: 53 20 54 4F 4F 20 53 4D  41 4C 4C 20 46 4F 52 0D  |S TOO SMALL FOR.|
00000420: 54 48 45 20 43 55 52 52  45 4E 54 20 53 54 52 49  |THE CURRENT STRI|
00000430: 4E 47 2E 0D 20 20 20 20  D7 48 45 4E 20 54 48 49  |NG..    .HEN THI|
00000440: 53 20 48 41 50 50 45 4E  53 2C 20 54 48 45 20 47  |S HAPPENS, THE G|
00000450: 41 52 42 41 47 45 0D 43  4F 4C 4C 45 43 54 49 4F  |ARBAGE.COLLECTIO|
00000460: 4E 20 52 4F 55 54 49 4E  45 20 41 54 54 45 4D 50  |N ROUTINE ATTEMP|
00000470: 54 53 20 54 4F 0D 52 45  4F 52 47 41 4E 49 5A 45  |TS TO.REORGANIZE|
00000480: 20 54 48 45 20 53 50 41  43 45 20 41 42 4F 56 45  | THE SPACE ABOVE|
00000490: 20 41 52 52 41 59 53 2E  0D 0D 20 20 20 20 D4 4F  | ARRAYS...    .O|
000004A0: 20 53 45 45 20 57 48 59  20 49 54 20 4D 41 59 20  | SEE WHY IT MAY |
000004B0: 42 45 20 50 4F 53 53 49  42 4C 45 20 54 4F 0D 52  |BE POSSIBLE TO.R|
000004C0: 45 4F 52 47 41 4E 49 5A  45 20 54 48 45 20 53 50  |EORGANIZE THE SP|
000004D0: 41 43 45 20 57 49 54 48  4F 55 54 20 4C 4F 53 49  |ACE WITHOUT LOSI|
000004E0: 4E 47 0D 56 41 52 49 41  42 4C 45 53 2C 20 43 4F  |NG.VARIABLES, CO|
000004F0: 4E 53 49 44 45 52 20 41  20 50 52 4F 47 52 41 4D  |NSIDER A PROGRAM|
00000500: 20 57 48 49 43 48 0D 55  53 45 53 20 C1 24 20 41  | WHICH.USES .$ A|
00000510: 4E 44 20 C2 24 20 4F 56  45 52 20 41 4E 44 20 4F  |ND .$ OVER AND O|
00000520: 56 45 52 2E 20 20 D3 55  50 50 4F 53 45 0D 54 48  |VER.  .UPPOSE.TH|
00000530: 41 54 20 45 41 43 48 20  49 53 20 53 54 4F 52 45  |AT EACH IS STORE|
00000540: 44 20 49 4E 20 48 49 47  48 20 4D 45 4D 4F 52 59  |D IN HIGH MEMORY|
00000550: 20 41 4E 44 0D 45 41 43  48 20 54 41 4B 45 53 20  | AND.EACH TAKES |
00000560: 4F 4E 20 54 48 45 53 45  20 56 41 4C 55 45 53 20  |ON THESE VALUES |
00000570: 49 4E 20 54 48 49 53 0D  4F 52 44 45 52 3A 20 C1  |IN THIS.ORDER: .|
00000580: 24 20 49 53 22 C3 C1 D4  22 2C 20 C1 24 20 49 53  |$ IS"...", .$ IS|
00000590: 20 22 C2 C9 D2 C4 22 2C  20 C2 24 20 49 53 0D 22  | "....", .$ IS."|
000005A0: CE D5 CD C2 C5 D2 22 20  41 4E 44 20 46 49 4E 41  |......" AND FINA|
000005B0: 4C 4C 59 20 C2 24 20 49  53 20 22 CC C5 D4 D4 C5  |LLY .$ IS ".....|
000005C0: D2 2E 22 0D D4 48 45 20  54 4F 50 20 4F 46 20 4D  |.."..HE TOP OF M|
000005D0: 45 4D 4F 52 59 20 57 49  4C 4C 20 4E 4F 57 20 43  |EMORY WILL NOW C|
000005E0: 4F 4E 54 41 49 4E 3A 0D  0D 20 20 20 20 20 CC C5  |ONTAIN:..     ..|
000005F0: D4 D4 C5 D2 CE D5 CD C2  C5 D2 C2 C9 D2 C4 C3 C1  |................|
00000600: D4 0D 0D 0D 0D 0D 0D 20  20 20 20 C9 46 20 54 48  |.......    .F TH|
00000610: 45 20 47 41 52 42 41 47  45 20 43 4F 4C 4C 45 43  |E GARBAGE COLLEC|
00000620: 54 49 4F 4E 20 52 4F 55  54 49 4E 45 0D 49 53 20  |TION ROUTINE.IS |
00000630: 55 53 45 44 2C 20 54 48  45 20 43 4F 4D 50 55 54  |USED, THE COMPUT|
00000640: 45 52 20 57 49 4C 4C 20  4C 4F 4F 4B 20 41 54 20  |ER WILL LOOK AT |
00000650: 54 48 45 0D 50 4F 49 4E  54 45 52 53 20 4F 46 20  |THE.POINTERS OF |
00000660: 41 4C 4C 20 56 41 52 49  41 42 4C 45 53 20 41 4E  |ALL VARIABLES AN|
00000670: 44 20 53 45 4C 45 43 54  0D 54 48 45 20 4F 4E 45  |D SELECT.THE ONE|
00000680: 20 4E 45 41 52 45 53 54  20 54 48 45 20 54 4F 50  | NEAREST THE TOP|
00000690: 20 4F 46 20 D2 C1 CD 2E  20 20 C9 4E 0D 54 48 49  | OF ....  .N.THI|
000006A0: 53 20 43 41 53 45 2C 20  49 54 20 49 53 20 C1 24  |S CASE, IT IS .$|
000006B0: 20 41 4E 44 20 54 48 45  20 50 4F 49 4E 54 45 52  | AND THE POINTER|
000006C0: 53 0D 49 4E 44 49 43 41  54 45 20 54 48 45 20 53  |S.INDICATE THE S|
000006D0: 54 41 52 54 20 4F 46 20  C2 C9 D2 C4 2C 20 54 48  |TART OF ...., TH|
000006E0: 45 0D 43 55 52 52 45 4E  54 20 56 41 4C 55 45 20  |E.CURRENT VALUE |
000006F0: 4F 46 20 C1 24 2E 20 20  D3 49 4E 43 45 20 54 48  |OF .$.  .INCE TH|
00000700: 49 53 20 49 53 0D 54 48  45 20 48 49 47 48 45 53  |IS IS.THE HIGHES|
00000710: 54 20 41 44 44 52 45 53  53 20 46 4F 55 4E 44 2C  |T ADDRESS FOUND,|
00000720: 20 41 4E 59 20 53 54 52  49 4E 47 0D 41 42 4F 56  | ANY STRING.ABOV|
00000730: 45 20 48 45 52 45 20 49  53 20 4E 4F 20 4C 4F 4E  |E HERE IS NO LON|
00000740: 47 45 52 20 4E 45 45 44  45 44 20 53 4F 20 54 48  |GER NEEDED SO TH|
00000750: 45 0D 43 4F 4D 50 55 54  45 52 20 4D 4F 56 45 53  |E.COMPUTER MOVES|
00000760: 20 C2 C9 D2 C4 20 54 4F  20 54 48 45 20 54 4F 50  | .... TO THE TOP|
00000770: 20 41 4E 44 20 54 48 45  0D 4D 45 4D 4F 52 59 20  | AND THE.MEMORY |
00000780: 4E 4F 57 20 43 4F 4E 54  41 49 4E 53 3A 0D 0D 20  |NOW CONTAINS:.. |
00000790: 20 20 20 20 CC C5 D4 D4  C5 D2 CE D5 CD C2 C5 D2  |    ............|
000007A0: C2 C9 D2 C2 C9 D2 C4 0D  0D 0D 0D 0D 0D 0D 20 20  |..............  |
000007B0: 20 20 D4 48 45 20 52 4F  55 54 49 4E 45 20 4E 4F  |  .HE ROUTINE NO|
000007C0: 57 20 4C 4F 4F 4B 53 20  54 48 52 4F 55 47 48 20  |W LOOKS THROUGH |
000007D0: 54 48 45 0D 45 4E 54 49  52 45 20 4C 49 53 54 20  |THE.ENTIRE LIST |
000007E0: 41 47 41 49 4E 2C 20 44  45 43 49 44 49 4E 47 20  |AGAIN, DECIDING |
000007F0: 57 48 49 43 48 0D 50 4F  49 4E 54 45 52 20 50 4F  |WHICH.POINTER PO|
00000800: 49 4E 54 53 20 54 4F 20  4E 45 58 54 20 48 49 47  |INTS TO NEXT HIG|
00000810: 48 45 53 54 20 4D 45 4D  4F 52 59 0D 4C 4F 43 41  |HEST MEMORY.LOCA|
00000820: 54 49 4F 4E 2E 20 20 C9  4E 20 4F 55 52 20 45 58  |TION.  .N OUR EX|
00000830: 41 4D 50 4C 45 20 54 48  45 52 45 20 49 53 0D 4F  |AMPLE THERE IS.O|
00000840: 4E 4C 59 20 4F 4E 45 20  53 54 52 49 4E 47 20 4C  |NLY ONE STRING L|
00000850: 45 46 54 2C 20 C2 24 2E  20 20 D4 48 45 20 43 55  |EFT, .$.  .HE CU|
00000860: 52 52 45 4E 54 0D 56 41  4C 55 45 20 4F 46 20 C2  |RRENT.VALUE OF .|
00000870: 24 20 49 53 20 CC C5 D4  D4 C5 D2 2C 20 53 4F 20  |$ IS ......, SO |
00000880: 54 48 49 53 20 49 53 0D  4D 4F 56 45 44 20 54 4F  |THIS IS.MOVED TO|
00000890: 20 54 48 45 20 4E 45 58  54 20 53 50 41 43 45 20  | THE NEXT SPACE |
000008A0: 41 46 54 45 52 20 54 48  45 20 4E 45 57 0D 50 4F  |AFTER THE NEW.PO|
000008B0: 53 49 54 49 4F 4E 20 4F  46 20 C1 24 20 41 4E 44  |SITION OF .$ AND|
000008C0: 20 54 48 45 20 4D 45 4D  4F 52 59 20 4C 4F 4F 4B  | THE MEMORY LOOK|
000008D0: 53 0D 4C 49 4B 45 20 54  48 49 53 3A 0D 0D 20 20  |S.LIKE THIS:..  |
000008E0: 20 20 20 CC C5 D4 D4 C5  D2 CE D5 CD CC C5 D4 D4  |   .............|
000008F0: C5 D2 C2 C9 D2 C4 0D 0D  20 20 20 20 D4 48 45 20  |........    .HE |
00000900: 50 4F 49 4E 54 45 52 20  57 48 49 43 48 20 49 4E  |POINTER WHICH IN|
00000910: 44 49 43 41 54 45 53 20  54 48 45 0D 42 4F 54 54  |DICATES THE.BOTT|
00000920: 4F 4D 20 4F 46 20 53 54  52 49 4E 47 53 20 49 53  |OM OF STRINGS IS|
00000930: 20 4E 4F 57 20 53 45 54  20 54 4F 20 54 48 45 0D  | NOW SET TO THE.|
00000940: 53 50 41 43 45 20 57 48  45 52 45 20 54 48 45 20  |SPACE WHERE THE |
00000950: 4E 45 57 4C 59 20 50 4C  41 43 45 44 20 CC C5 D4  |NEWLY PLACED ...|
00000960: D4 C5 D2 0D 53 54 41 52  54 53 2E 20 20 D4 48 45  |....STARTS.  .HE|
00000970: 20 4F 4C 44 20 56 41 4C  55 45 53 20 41 52 45 20  | OLD VALUES ARE |
00000980: 4E 4F 54 20 45 52 41 53  45 44 0D 42 55 54 20 57  |NOT ERASED.BUT W|
00000990: 49 4C 4C 20 42 45 20 4F  56 45 52 57 52 49 54 54  |ILL BE OVERWRITT|
000009A0: 45 4E 20 42 59 20 54 48  45 20 4E 45 58 54 0D 53  |EN BY THE NEXT.S|
000009B0: 54 52 49 4E 47 2E 0D 0D  20 20 20 20 D3 49 4D 50  |TRING...    .IMP|
000009C0: 4C 45 20 45 4E 4F 55 47  48 2C 20 42 55 54 20 49  |LE ENOUGH, BUT I|
000009D0: 46 20 54 48 45 20 4E 55  4D 42 45 52 0D 4F 46 20  |F THE NUMBER.OF |
000009E0: 56 41 52 49 41 42 4C 45  53 20 49 53 20 4C 41 52  |VARIABLES IS LAR|
000009F0: 47 45 2C 20 54 48 45 20  50 52 4F 43 45 53 53 20  |GE, THE PROCESS |
00000A00: 43 41 4E 0D 42 45 20 54  49 4D 45 20 43 4F 4E 53  |CAN.BE TIME CONS|
00000A10: 55 4D 49 4E 47 2E 20 20  D3 49 4E 43 45 20 54 48  |UMING.  .INCE TH|
00000A20: 45 20 53 49 4D 50 4C 45  0D 56 41 52 49 41 42 4C  |E SIMPLE.VARIABL|
00000A30: 45 53 20 41 4E 44 20 54  48 45 20 41 52 52 41 59  |ES AND THE ARRAY|
00000A40: 20 56 41 52 49 41 42 4C  45 53 20 4D 41 59 0D 43  | VARIABLES MAY.C|
00000A50: 4F 4E 54 41 49 4E 20 53  54 52 49 4E 47 53 2C 20  |ONTAIN STRINGS, |
00000A60: 41 4C 4C 20 4F 46 20 54  48 45 53 45 20 41 52 45  |ALL OF THESE ARE|
00000A70: 41 53 0D 4D 55 53 54 20  42 45 20 53 45 41 52 43  |AS.MUST BE SEARC|
00000A80: 48 45 44 20 43 4F 4D 50  4C 45 54 45 4C 59 20 C6  |HED COMPLETELY .|
00000A90: CF D2 20 C5 C1 C3 C8 0D  D6 C1 D2 C9 C1 C2 CC C5  |.. .............|
00000AA0: 2E 20 20 C9 46 20 54 48  45 52 45 20 41 52 45 20  |.  .F THERE ARE |
00000AB0: 31 30 30 20 56 41 52 49  41 42 4C 45 53 2C 0D 45  |100 VARIABLES,.E|
00000AC0: 41 43 48 20 57 49 4C 4C  20 42 45 20 4C 4F 4F 4B  |ACH WILL BE LOOK|
00000AD0: 45 44 20 41 54 20 4D 41  4E 59 20 54 49 4D 45 53  |ED AT MANY TIMES|
00000AE0: 2C 20 41 4E 44 0D 4D 4F  52 45 20 54 49 4D 45 20  |, AND.MORE TIME |
00000AF0: 57 49 4C 4C 20 42 45 20  52 45 51 55 49 52 45 44  |WILL BE REQUIRED|
00000B00: 20 54 4F 20 4D 4F 56 45  0D 45 41 43 48 20 53 54  | TO MOVE.EACH ST|
00000B10: 52 49 4E 47 2E 0D 0D 20  20 20 20 CE 4F 54 49 43  |RING...    .OTIC|
00000B20: 45 20 54 48 41 54 20 54  48 45 20 52 4F 55 54 49  |E THAT THE ROUTI|
00000B30: 4E 45 20 57 4F 52 4B 53  20 57 49 54 48 0D 50 4F  |NE WORKS WITH.PO|
00000B40: 49 4E 54 45 52 53 20 41  4E 44 20 4C 45 4E 47 54  |INTERS AND LENGT|
00000B50: 48 20 4F 46 20 53 54 52  49 4E 47 20 55 4E 54 49  |H OF STRING UNTI|
00000B60: 4C 0D 54 48 45 20 41 43  54 55 41 4C 20 4D 4F 56  |L.THE ACTUAL MOV|
00000B70: 45 20 49 53 20 4D 41 44  45 2E 20 20 C5 56 45 4E  |E IS MADE.  .VEN|
00000B80: 20 54 48 45 4E 2C 0D 54  48 45 53 45 20 4E 55 4D  | THEN,.THESE NUM|
00000B90: 42 45 52 53 20 41 4C 4C  4F 57 20 54 48 45 20 53  |BERS ALLOW THE S|
00000BA0: 54 52 49 4E 47 20 54 4F  20 42 45 0D 4D 4F 56 45  |TRING TO BE.MOVE|
00000BB0: 44 20 45 46 46 49 43 49  45 4E 54 4C 59 2C 20 53  |D EFFICIENTLY, S|
00000BC0: 49 4E 43 45 20 54 48 45  20 53 54 41 52 54 20 4F  |INCE THE START O|
00000BD0: 46 0D 54 48 45 20 4E 45  57 20 4C 4F 43 41 54 49  |F.THE NEW LOCATI|
00000BE0: 4F 4E 20 49 53 20 45 41  53 49 4C 59 20 43 41 4C  |ON IS EASILY CAL|
00000BF0: 43 55 4C 41 54 45 44 2E  0D 0D 20 20 20 20 D4 48  |CULATED...    .H|
00000C00: 49 53 20 41 4C 53 4F 20  4D 45 41 4E 53 20 54 48  |IS ALSO MEANS TH|
00000C10: 41 54 20 54 48 45 20 41  43 54 55 41 4C 0D 4D 4F  |AT THE ACTUAL.MO|
00000C20: 56 45 53 20 52 45 51 55  49 52 45 44 20 4F 4E 4C  |VES REQUIRED ONL|
00000C30: 59 20 41 20 46 52 41 43  54 49 4F 4E 20 4F 46 20  |Y A FRACTION OF |
00000C40: 54 48 45 0D 54 49 4D 45  20 54 48 41 54 20 54 48  |THE.TIME THAT TH|
00000C50: 45 20 53 45 41 52 43 48  20 52 45 51 55 49 52 45  |E SEARCH REQUIRE|
00000C60: 53 20 57 48 45 4E 0D 54  48 45 20 4E 55 4D 42 45  |S WHEN.THE NUMBE|
00000C70: 52 20 4F 46 20 53 54 52  49 4E 47 53 20 49 53 20  |R OF STRINGS IS |
00000C80: 46 41 49 52 4C 59 0D 4C  41 52 47 45 2E 0D 0D 20  |FAIRLY.LARGE... |
00000C90: 20 20 20 D4 48 45 20 4C  45 4E 47 54 48 20 4F 46  |   .HE LENGTH OF|
00000CA0: 20 53 54 52 49 4E 47 53  20 48 41 53 20 56 45 52  | STRINGS HAS VER|
00000CB0: 59 0D 4C 49 54 54 4C 45  20 45 46 46 45 43 54 20  |Y.LITTLE EFFECT |
00000CC0: 4F 4E 20 54 48 45 20 54  49 4D 45 20 52 45 51 55  |ON THE TIME REQU|
00000CD0: 49 52 45 44 20 46 4F 52  0D 47 41 52 42 41 47 45  |IRED FOR.GARBAGE|
00000CE0: 20 43 4F 4C 4C 45 43 54  49 4F 4E 2E 20 20 D4 48  | COLLECTION.  .H|
00000CF0: 45 20 44 4F 4D 49 4E 41  54 49 4E 47 0D 46 41 43  |E DOMINATING.FAC|
00000D00: 54 4F 52 20 49 53 20 54  48 45 20 4E 55 4D 42 45  |TOR IS THE NUMBE|
00000D10: 52 20 4F 46 20 53 54 52  49 4E 47 53 20 53 54 4F  |R OF STRINGS STO|
00000D20: 52 45 44 0D 41 42 4F 56  45 20 54 48 45 20 45 4E  |RED.ABOVE THE EN|
00000D30: 44 20 4F 46 20 41 52 52  41 59 53 2E 20 20 D7 48  |D OF ARRAYS.  .H|
00000D40: 45 4E 20 54 48 45 0D 53  45 41 52 43 48 20 49 53  |EN THE.SEARCH IS|
00000D50: 20 4D 41 44 45 2C 20 56  41 52 49 41 42 4C 45 53  | MADE, VARIABLES|
00000D60: 20 53 54 4F 52 45 44 20  49 4E 0D 54 48 45 20 43  | STORED IN.THE C|
00000D70: 4F 44 45 20 41 52 45 20  50 41 53 53 45 44 20 4F  |ODE ARE PASSED O|
00000D80: 56 45 52 20 53 49 4E 43  45 20 54 48 45 59 0D 41  |VER SINCE THEY.A|
00000D90: 52 45 20 4E 45 56 45 52  20 4D 4F 56 45 44 2E 20  |RE NEVER MOVED. |
00000DA0: 20 D2 55 4E 20 54 48 45  20 44 45 4D 4F 20 46 4F  | .UN THE DEMO FO|
00000DB0: 52 0D 45 56 49 44 45 4E  43 45 20 4F 46 20 54 48  |R.EVIDENCE OF TH|
00000DC0: 45 53 45 20 53 54 41 54  45 4D 45 4E 54 53 20 41  |ESE STATEMENTS A|
00000DD0: 4E 44 20 52 45 41 44 0D  54 48 45 20 54 45 58 54  |ND READ.THE TEXT|
00000DE0: 20 53 43 52 45 45 4E 53  20 46 4F 52 20 4D 4F 52  | SCREENS FOR MOR|
00000DF0: 45 0D 49 4E 46 4F 52 4D  41 54 49 4F 4E 2E 0D 0D  |E.INFORMATION...|
00000E00: 0D 0D 20 20 20 20 D4 48  41 54 20 41 42 4F 55 54  |..    .HAT ABOUT|
00000E10: 20 44 4F 45 53 20 49 54  20 46 4F 52 20 54 48 45  | DOES IT FOR THE|
00000E20: 20 53 55 4D 4D 41 52 59  0D 4F 46 20 54 48 45 20  | SUMMARY.OF THE |
00000E30: 53 54 55 44 59 2C 20 53  4F 20 4E 4F 57 20 C9 20  |STUDY, SO NOW . |
00000E40: 57 49 4C 4C 20 43 4C 4F  53 45 20 57 49 54 48 0D  |WILL CLOSE WITH.|
00000E50: 53 4F 4D 45 20 43 4F 4D  4D 45 4E 54 53 20 41 4E  |SOME COMMENTS AN|
00000E60: 44 20 53 4F 4D 45 20 53  55 47 47 45 53 54 49 4F  |D SOME SUGGESTIO|
00000E70: 4E 53 2E 0D 0D 20 20 20  20 D4 48 49 53 20 57 48  |NS...    .HIS WH|
00000E80: 4F 4C 45 20 54 48 49 4E  47 20 57 41 53 20 50 52  |OLE THING WAS PR|
00000E90: 4F 4D 50 54 45 44 20 42  59 0D CA 45 46 46 20 CA  |OMPTED BY..EFF .|
00000EA0: 4F 4E 45 53 27 53 20 C2  C1 D3 C9 C3 D3 20 41 52  |ONES'S ...... AR|
00000EB0: 54 49 43 4C 45 20 4F 4E  0D CC CF C1 C4 D3 D4 C1  |TICLE ON........|
00000EC0: D2 20 23 35 37 2C 20 41  4E 44 20 57 48 49 4C 45  |. #57, AND WHILE|
00000ED0: 20 41 20 46 45 57 20 4F  46 20 48 49 53 0D 52 45  | A FEW OF HIS.RE|
00000EE0: 4D 41 52 4B 53 20 4D 41  59 20 4E 45 45 44 20 54  |MARKS MAY NEED T|
00000EF0: 4F 20 42 45 20 51 55 41  4C 49 46 49 45 44 2C 20  |O BE QUALIFIED, |
00000F00: 48 49 53 0D 4D 41 49 4E  20 50 4F 49 4E 54 53 20  |HIS.MAIN POINTS |
00000F10: 41 52 45 20 57 45 4C 4C  20 50 52 4F 56 45 44 2E  |ARE WELL PROVED.|
00000F20: 20 20 C1 20 46 45 57 0D  4A 49 46 46 49 45 53 20  |  . FEW.JIFFIES |
00000F30: 48 45 52 45 20 41 4E 44  20 54 48 45 52 45 20 41  |HERE AND THERE A|
00000F40: 52 45 20 4F 46 20 4E 4F  0D 47 52 45 41 54 20 49  |RE OF NO.GREAT I|
00000F50: 4D 50 4F 52 54 2E 20 20  C1 20 46 45 57 20 4A 49  |MPORT.  . FEW JI|
00000F60: 46 46 49 45 53 20 49 4E  20 45 41 43 48 0D 50 41  |FFIES IN EACH.PA|
00000F70: 52 54 20 4F 46 20 41 20  31 30 30 30 20 53 54 45  |RT OF A 1000 STE|
00000F80: 50 20 4C 4F 4F 50 20 41  52 45 20 56 45 52 59 0D  |P LOOP ARE VERY.|
00000F90: 49 4D 50 4F 52 54 41 4E  54 2E 20 20 CD 4F 52 45  |IMPORTANT.  .ORE|
00000FA0: 20 54 49 4D 45 20 49 53  20 47 41 49 4E 45 44 20  | TIME IS GAINED |
00000FB0: 42 59 0D 55 53 49 4E 47  20 53 48 4F 52 54 20 43  |BY.USING SHORT C|
00000FC0: 4F 44 45 20 41 4E 44 20  45 46 46 49 43 49 45 4E  |ODE AND EFFICIEN|
00000FD0: 54 0D 41 4C 47 4F 52 49  54 48 4D 53 20 54 48 41  |T.ALGORITHMS THA|
00000FE0: 4E 20 42 59 20 41 54 54  45 4D 50 54 49 4E 47 20  |N BY ATTEMPTING |
00000FF0: 54 4F 0D 43 48 41 4E 47  45 20 4D 55 4C 54 49 50  |TO.CHANGE MULTIP|
00001000: 4C 59 20 54 4F 20 44 49  56 49 44 45 20 4F 52 20  |LY TO DIVIDE OR |
00001010: 53 4F 4D 45 0D 4F 54 48  45 52 20 53 55 43 48 20  |SOME.OTHER SUCH |
00001020: 44 4F 55 42 54 46 55 4C  20 53 43 48 45 4D 45 2E  |DOUBTFUL SCHEME.|
00001030: 20 20 D7 4F 52 52 59 0D  4D 4F 52 45 20 41 42 4F  |  .ORRY.MORE ABO|
00001040: 55 54 20 54 48 45 20 42  49 47 20 50 49 43 54 55  |UT THE BIG PICTU|
00001050: 52 45 2E 0D 0D 20 20 20  20 C9 20 4E 4F 57 20 42  |RE...    . NOW B|
00001060: 45 4C 49 45 56 45 20 54  48 41 54 20 47 41 52 42  |ELIEVE THAT GARB|
00001070: 41 47 45 0D 43 4F 4C 4C  45 43 54 49 4F 4E 20 48  |AGE.COLLECTION H|
00001080: 41 53 20 42 45 45 4E 20  42 41 44 4C 59 20 48 41  |AS BEEN BADLY HA|
00001090: 4E 44 4C 45 44 20 49 4E  0D 54 48 45 20 4C 49 54  |NDLED IN.THE LIT|
000010A0: 45 52 41 54 55 52 45 2E  20 20 D4 48 45 20 55 53  |ERATURE.  .HE US|
000010B0: 55 41 4C 20 54 48 49 4E  47 20 48 41 53 0D 42 45  |UAL THING HAS.BE|
000010C0: 45 4E 20 54 4F 20 4D 41  4B 45 20 53 4F 4D 45 20  |EN TO MAKE SOME |
000010D0: 50 52 4F 4E 4F 55 4E 43  45 4D 45 4E 54 0D 57 49  |PRONOUNCEMENT.WI|
000010E0: 54 48 4F 55 54 20 41 4E  59 20 45 56 49 44 45 4E  |THOUT ANY EVIDEN|
000010F0: 43 45 20 4F 52 20 45 58  50 4C 41 4E 41 54 49 4F  |CE OR EXPLANATIO|
00001100: 4E 2E 0D CD 59 20 4F 50  49 4E 49 4F 4E 20 49 53  |N...Y OPINION IS|
00001110: 20 54 48 49 53 3A 20 C9  46 20 54 48 45 20 4E 55  | THIS: .F THE NU|
00001120: 4D 42 45 52 20 4F 46 0D  53 54 52 49 4E 47 53 20  |MBER OF.STRINGS |
00001130: 53 54 4F 52 45 44 20 41  54 20 54 48 45 20 54 4F  |STORED AT THE TO|
00001140: 50 20 4F 46 20 4D 45 4D  4F 52 59 20 49 53 0D 52  |P OF MEMORY IS.R|
00001150: 45 4C 41 54 49 56 45 4C  59 20 53 4D 41 4C 4C 2C  |ELATIVELY SMALL,|
00001160: 20 53 41 59 20 4C 45 53  53 20 54 48 41 4E 20 36  | SAY LESS THAN 6|
00001170: 30 2C 0D 53 45 52 49 4F  55 53 20 50 52 4F 42 4C  |0,.SERIOUS PROBL|
00001180: 45 4D 53 20 57 49 54 48  20 47 41 52 42 41 47 45  |EMS WITH GARBAGE|
00001190: 0D 43 4F 4C 4C 45 43 54  49 4F 4E 20 57 49 4C 4C  |.COLLECTION WILL|
000011A0: 20 4F 4E 4C 59 20 41 52  49 53 45 20 49 46 0D 41  | ONLY ARISE IF.A|
000011B0: 56 41 49 4C 41 42 4C 45  20 4D 45 4D 4F 52 59 20  |VAILABLE MEMORY |
000011C0: 49 53 20 53 4D 41 4C 4C  2E 20 20 D4 48 45 0D 50  |IS SMALL.  .HE.P|
000011D0: 52 4F 42 4C 45 4D 2C 20  54 48 45 4E 2C 20 49 53  |ROBLEM, THEN, IS|
000011E0: 20 54 4F 20 53 54 52 49  4B 45 20 41 0D 42 41 4C  | TO STRIKE A.BAL|
000011F0: 41 4E 43 45 2E 0D 0D 0D  0D 0D 0D 0D 20 20 20 20  |ANCE........    |
00001200: C9 20 53 55 53 50 45 43  54 20 54 48 45 52 45 20  |. SUSPECT THERE |
00001210: 41 52 45 20 4D 41 4E 59  0D 54 45 43 48 4E 49 51  |ARE MANY.TECHNIQ|
00001220: 55 45 53 20 54 48 41 54  20 4E 45 45 44 20 54 4F  |UES THAT NEED TO|
00001230: 20 42 45 20 45 58 50 4C  4F 52 45 44 0D 41 4E 44  | BE EXPLORED.AND|
00001240: 20 44 49 53 43 55 53 53  45 44 2C 20 42 55 54 20  | DISCUSSED, BUT |
00001250: C9 20 41 4D 20 4E 4F 54  20 54 48 45 20 4F 4E 45  |. AM NOT THE ONE|
00001260: 20 54 4F 0D 44 4F 20 49  54 2E 20 20 C9 20 48 41  | TO.DO IT.  . HA|
00001270: 44 20 41 20 4C 4F 54 20  4F 46 20 54 52 4F 55 42  |D A LOT OF TROUB|
00001280: 4C 45 0D 44 45 53 49 47  4E 49 4E 47 20 50 52 4F  |LE.DESIGNING PRO|
00001290: 47 52 41 4D 53 20 54 4F  20 49 4C 4C 55 53 54 52  |GRAMS TO ILLUSTR|
000012A0: 41 54 45 20 54 48 45 0D  49 44 45 41 2E 20 20 D4  |ATE THE.IDEA.  .|
000012B0: 48 45 20 4D 4F 44 49 46  49 45 44 20 C2 D9 D4 C5  |HE MODIFIED ....|
000012C0: D3 20 23 35 37 20 44 45  4D 4F 0D 54 48 41 54 20  |. #57 DEMO.THAT |
000012D0: C9 20 4D 45 4E 54 49 4F  4E 45 44 20 49 4E 20 D0  |. MENTIONED IN .|
000012E0: 41 52 54 20 C9 20 43 4F  4E 54 41 49 4E 45 44 0D  |ART . CONTAINED.|
000012F0: 56 45 52 59 20 4C 4F 4E  47 20 28 41 42 4F 55 54  |VERY LONG (ABOUT|
00001300: 20 31 34 30 20 43 48 41  52 41 43 54 45 52 53 29  | 140 CHARACTERS)|
00001310: 0D 53 54 52 49 4E 47 53  20 41 4E 44 20 57 41 53  |.STRINGS AND WAS|
00001320: 20 43 4F 4E 53 54 41 4E  54 4C 59 20 47 45 4E 45  | CONSTANTLY GENE|
00001330: 52 41 54 49 4E 47 0D 4D  4F 52 45 2E 20 20 D9 45  |RATING.MORE.  .E|
00001340: 54 2C 20 47 41 52 42 41  47 45 20 57 41 53 20 4F  |T, GARBAGE WAS O|
00001350: 4E 4C 59 20 43 4F 4C 4C  45 43 54 45 44 0D 41 46  |NLY COLLECTED.AF|
00001360: 54 45 52 20 41 42 4F 55  54 20 53 49 58 20 48 41  |TER ABOUT SIX HA|
00001370: 4E 44 53 20 41 4E 44 20  52 45 51 55 49 52 45 44  |NDS AND REQUIRED|
00001380: 0D 41 42 4F 55 54 20 D3  C5 D6 C5 CE 20 CA C9 C6  |.ABOUT ..... ...|
00001390: C6 C9 C5 D3 2E 0D 0D 20  20 20 20 C5 4D 45 52 53  |.......    .MERS|
000013A0: 4F 4E 20 53 41 49 44 2C  20 22 C6 45 41 52 20 41  |ON SAID, ".EAR A|
000013B0: 4C 57 41 59 53 20 53 50  52 49 4E 47 53 0D 46 52  |LWAYS SPRINGS.FR|
000013C0: 4F 4D 20 49 47 4E 4F 52  41 4E 43 45 2E 22 20 20  |OM IGNORANCE."  |
000013D0: C3 4F 55 4C 44 20 49 54  20 42 45 20 54 48 41 54  |.OULD IT BE THAT|
000013E0: 20 48 45 0D 57 41 53 20  54 41 4C 4B 49 4E 47 20  | HE.WAS TALKING |
000013F0: 41 42 4F 55 54 20 46 45  41 52 20 4F 46 20 47 41  |ABOUT FEAR OF GA|
00001400: 52 42 41 47 45 0D 43 4F  4C 4C 45 43 54 49 4F 4E  |RBAGE.COLLECTION|
00001410: 3F 0D 0D 0D 20 20 20 20  C9 54 20 53 45 45 4D 53  |?...    .T SEEMS|
00001420: 20 4F 42 56 49 4F 55 53  20 54 48 41 54 20 54 48  | OBVIOUS THAT TH|
00001430: 45 20 53 50 45 45 44 0D  41 4E 44 20 4D 45 4D 4F  |E SPEED.AND MEMO|
00001440: 52 59 20 55 53 41 47 45  20 41 52 45 20 43 4F 4E  |RY USAGE ARE CON|
00001450: 4E 45 43 54 45 44 20 49  4E 20 4D 41 4E 59 0D 57  |NECTED IN MANY.W|
00001460: 41 59 53 20 41 4E 44 20  54 48 41 54 20 54 48 45  |AYS AND THAT THE|
00001470: 20 54 57 4F 20 4D 55 53  54 20 42 45 0D 43 4F 4E  | TWO MUST BE.CON|
00001480: 53 49 44 45 52 45 44 20  54 4F 47 45 54 48 45 52  |SIDERED TOGETHER|
00001490: 2E 20 20 C9 20 4C 49 4B  45 20 48 45 41 56 49 4C  |.  . LIKE HEAVIL|
000014A0: 59 0D 44 4F 43 55 4D 45  4E 54 45 44 20 50 52 4F  |Y.DOCUMENTED PRO|
000014B0: 47 52 41 4D 53 2C 20 41  4E 44 20 54 48 49 53 20  |GRAMS, AND THIS |
000014C0: 53 54 55 44 59 0D 53 48  4F 57 53 20 54 48 41 54  |STUDY.SHOWS THAT|
000014D0: 20 53 50 45 45 44 20 49  53 20 4E 4F 54 20 53 45  | SPEED IS NOT SE|
000014E0: 52 49 4F 55 53 4C 59 0D  41 46 46 45 43 54 45 44  |RIOUSLY.AFFECTED|
000014F0: 20 42 59 20 D2 C5 CD 20  53 54 41 54 45 4D 45 4E  | BY ... STATEMEN|
00001500: 54 53 2C 20 55 4E 4C 45  53 53 0D 53 50 41 43 45  |TS, UNLESS.SPACE|
00001510: 20 49 53 20 41 20 50 52  4F 42 4C 45 4D 2E 0D 0D  | IS A PROBLEM...|
00001520: 20 20 20 20 C9 4E 20 4F  52 44 45 52 20 54 4F 20  |    .N ORDER TO |
00001530: 46 55 4C 4C 59 20 55 4E  44 45 52 53 54 41 4E 44  |FULLY UNDERSTAND|
00001540: 20 48 4F 57 0D C2 C1 D3  C9 C3 20 55 53 45 53 20  | HOW...... USES |
00001550: 4D 45 4D 4F 52 59 2C 20  4F 4E 45 20 4E 45 45 44  |MEMORY, ONE NEED|
00001560: 53 20 4D 55 43 48 20 4D  4F 52 45 0D 44 45 54 41  |S MUCH MORE.DETA|
00001570: 49 4C 20 54 48 41 4E 20  57 41 53 20 50 4F 53 53  |IL THAN WAS POSS|
00001580: 49 42 4C 45 20 48 45 52  45 2E 20 20 C9 0D 53 54  |IBLE HERE.  ..ST|
00001590: 52 4F 4E 47 4C 59 20 53  55 47 47 45 53 54 20 54  |RONGLY SUGGEST T|
000015A0: 48 41 54 20 53 45 52 49  4F 55 53 0D 50 52 4F 47  |HAT SERIOUS.PROG|
000015B0: 52 41 4D 4D 45 52 53 20  4D 55 53 54 20 55 4E 44  |RAMMERS MUST UND|
000015C0: 45 52 53 54 41 4E 44 20  54 48 49 53 20 41 4E 44  |ERSTAND THIS AND|
000015D0: 0D 53 55 47 47 45 53 54  20 54 48 45 20 53 4F 55  |.SUGGEST THE SOU|
000015E0: 52 43 45 53 20 54 48 41  54 20 C9 20 4D 45 4E 54  |RCES THAT . MENT|
000015F0: 49 4F 4E 45 44 0D 49 4E  20 D0 41 52 54 20 C9 2E  |IONED.IN .ART ..|
00001600: 0D 0D 0D 20 20 20 20 CE  55 4D 42 45 52 53 20 41  |...    .UMBERS A|
00001610: 4E 44 20 53 54 52 49 4E  47 53 20 53 54 4F 52 45  |ND STRINGS STORE|
00001620: 44 20 42 59 0D 41 52 52  41 59 53 20 55 53 45 20  |D BY.ARRAYS USE |
00001630: 4C 45 53 53 20 53 50 41  43 45 20 41 4E 44 20 41  |LESS SPACE AND A|
00001640: 52 45 20 4D 4F 52 45 0D  51 55 49 43 4B 4C 59 20  |RE MORE.QUICKLY |
00001650: 4C 4F 43 41 54 45 44 20  54 48 41 4E 20 54 48 4F  |LOCATED THAN THO|
00001660: 53 45 20 53 54 4F 52 45  44 20 42 59 0D 53 49 4D  |SE STORED BY.SIM|
00001670: 50 4C 45 20 56 41 52 49  41 42 4C 45 53 2E 20 20  |PLE VARIABLES.  |
00001680: C9 20 42 45 4C 49 45 56  45 20 54 48 41 54 20 49  |. BELIEVE THAT I|
00001690: 54 0D 49 53 20 4F 4E 4C  59 20 41 20 4D 41 54 54  |T.IS ONLY A MATT|
000016A0: 45 52 20 4F 46 20 48 41  42 49 54 20 54 48 41 54  |ER OF HABIT THAT|
000016B0: 20 53 4F 20 4D 41 4E 59  0D 53 49 4D 50 4C 45 20  | SO MANY.SIMPLE |
000016C0: 56 41 52 49 41 42 4C 45  53 20 41 52 45 20 46 4F  |VARIABLES ARE FO|
000016D0: 55 4E 44 20 49 4E 20 54  48 45 0D 43 4F 44 45 2E  |UND IN THE.CODE.|
000016E0: 20 20 D7 49 54 48 20 41  20 4C 49 54 54 4C 45 20  |  .ITH A LITTLE |
000016F0: 41 54 54 49 54 55 44 45  0D 41 44 4A 55 53 54 4D  |ATTITUDE.ADJUSTM|
00001700: 45 4E 54 2C 20 57 45 20  43 4F 55 4C 44 20 53 45  |ENT, WE COULD SE|
00001710: 45 20 54 48 49 53 20 43  48 41 4E 47 45 2E 0D C9  |E THIS CHANGE...|
00001720: 20 43 41 4E 4E 4F 54 20  53 45 45 20 41 4E 59 20  | CANNOT SEE ANY |
00001730: 44 49 46 46 49 43 55 4C  54 59 20 49 4E 0D 44 45  |DIFFICULTY IN.DE|
00001740: 43 4C 41 52 49 4E 47 20  C1 CC CC 20 56 41 52 49  |CLARING ... VARI|
00001750: 41 42 4C 45 53 20 45 41  52 4C 59 20 49 4E 20 54  |ABLES EARLY IN T|
00001760: 48 45 0D 50 52 4F 47 52  41 4D 20 4E 4F 52 20 57  |HE.PROGRAM NOR W|
00001770: 49 54 48 20 44 45 43 4C  41 52 49 4E 47 20 54 48  |ITH DECLARING TH|
00001780: 45 20 4D 4F 53 54 0D 48  45 41 56 49 4C 59 20 55  |E MOST.HEAVILY U|
00001790: 53 45 44 20 53 49 4D 50  4C 45 20 56 41 52 49 41  |SED SIMPLE VARIA|
000017A0: 42 4C 45 53 20 4E 45 41  52 20 54 48 45 0D 54 4F  |BLES NEAR THE.TO|
000017B0: 50 20 4F 46 20 54 48 45  20 4C 49 53 54 2E 20 20  |P OF THE LIST.  |
000017C0: C1 20 53 49 4D 50 4C 45  20 C4 C9 CD 0D 53 54 41  |. SIMPLE ....STA|
000017D0: 54 45 4D 45 4E 54 20 44  4F 45 53 20 49 54 20 41  |TEMENT DOES IT A|
000017E0: 4C 4C 2E 20 20 D4 48 45  52 45 27 53 0D 4E 4F 54  |LL.  .HERE'S.NOT|
000017F0: 48 49 4E 47 20 57 52 4F  4E 47 20 57 49 54 48 20  |HING WRONG WITH |
00001800: 53 4F 4D 45 54 48 49 4E  47 20 4C 49 4B 45 0D 0D  |SOMETHING LIKE..|
00001810: 31 30 30 20 C4 C9 CD C1  24 2C C9 2C CA 2C CB 2C  |100 ....$,.,.,.,|
00001820: C2 24 2C C3 24 2C C2 2C  C3 2C C4 2C D8 2C D9 2C  |.$,.$,.,.,.,.,.,|
00001830: DA 0D 0D 41 54 20 54 48  45 20 42 45 47 49 4E 4E  |...AT THE BEGINN|
00001840: 49 4E 47 20 4F 46 20 59  4F 55 52 20 50 52 4F 47  |ING OF YOUR PROG|
00001850: 52 41 4D 2E 0D 0D 20 20  20 20 CD 59 20 45 58 41  |RAM...    .Y EXA|
00001860: 4D 49 4E 41 54 49 4F 4E  20 4F 46 20 43 4F 44 45  |MINATION OF CODE|
00001870: 20 48 41 53 20 53 48 4F  57 4E 0D 54 48 41 54 20  | HAS SHOWN.THAT |
00001880: 53 4F 4D 45 20 50 45 4F  50 4C 45 20 44 4F 20 41  |SOME PEOPLE DO A|
00001890: 20 47 4F 4F 44 20 4A 4F  42 20 4F 46 0D 4B 45 45  | GOOD JOB OF.KEE|
000018A0: 50 49 4E 47 20 54 48 45  20 4E 55 4D 42 45 52 20  |PING THE NUMBER |
000018B0: 4F 46 20 56 41 52 49 41  42 4C 45 53 20 53 4D 41  |OF VARIABLES SMA|
000018C0: 4C 4C 2C 0D 57 48 45 52  45 41 53 20 4F 54 48 45  |LL,.WHEREAS OTHE|
000018D0: 52 53 20 53 45 45 4D 20  54 4F 20 42 45 20 41 46  |RS SEEM TO BE AF|
000018E0: 52 41 49 44 20 54 4F 0D  52 45 55 53 45 20 56 41  |RAID TO.REUSE VA|
000018F0: 52 49 41 42 4C 45 53 20  41 54 20 41 4C 4C 2E 20  |RIABLES AT ALL. |
00001900: 20 C9 54 20 49 53 20 4E  4F 54 0D 44 49 46 46 49  | .T IS NOT.DIFFI|
00001910: 43 55 4C 54 20 54 4F 20  4B 4E 4F 57 20 57 48 45  |CULT TO KNOW WHE|
00001920: 4E 20 54 48 45 20 56 41  4C 55 45 0D 53 54 4F 52  |N THE VALUE.STOR|
00001930: 45 44 20 42 59 20 41 20  56 41 52 49 41 42 4C 45  |ED BY A VARIABLE|
00001940: 20 57 49 4C 4C 20 4E 4F  54 20 42 45 0D 4E 45 45  | WILL NOT BE.NEE|
00001950: 44 45 44 20 41 47 41 49  4E 2C 20 53 4F 20 54 48  |DED AGAIN, SO TH|
00001960: 41 54 20 54 48 45 20 56  41 52 49 41 42 4C 45 20  |AT THE VARIABLE |
00001970: 43 41 4E 0D 42 45 20 52  45 55 53 45 44 2E 0D 0D  |CAN.BE REUSED...|
00001980: 20 20 20 20 C5 56 45 4E  20 54 48 4F 55 47 48 20  |    .VEN THOUGH |
00001990: C9 20 53 50 45 4E 54 20  48 4F 55 52 53 20 57 41  |. SPENT HOURS WA|
000019A0: 49 54 49 4E 47 0D 46 4F  52 20 4C 4F 4E 47 20 4C  |ITING.FOR LONG L|
000019B0: 4F 4F 50 53 20 54 4F 20  52 55 4E 2C 20 48 4F 55  |OOPS TO RUN, HOU|
000019C0: 52 53 20 44 45 53 49 47  4E 49 4E 47 0D 41 4E 44  |RS DESIGNING.AND|
000019D0: 20 52 45 56 49 53 49 4E  47 20 54 45 53 54 53 2C  | REVISING TESTS,|
000019E0: 20 48 4F 55 52 53 20 52  45 41 44 49 4E 47 20 41  | HOURS READING A|
000019F0: 4E 44 0D 48 4F 55 52 53  20 45 56 41 4C 55 41 54  |ND.HOURS EVALUAT|
00001A00: 49 4E 47 2C 20 54 48 49  53 20 53 54 55 44 59 20  |ING, THIS STUDY |
00001A10: 48 41 53 20 42 45 45 4E  0D 47 52 41 54 49 46 59  |HAS BEEN.GRATIFY|
00001A20: 49 4E 47 2E 20 20 C9 20  42 45 4C 49 45 56 45 20  |ING.  . BELIEVE |
00001A30: 54 48 41 54 20 C9 20 48  41 56 45 0D 4B 45 50 54  |THAT . HAVE.KEPT|
00001A40: 20 4D 59 20 4F 50 49 4E  49 4F 4E 53 20 54 4F 20  | MY OPINIONS TO |
00001A50: 41 20 4D 49 4E 49 4D 55  4D 20 41 4E 44 20 48 41  |A MINIMUM AND HA|
00001A60: 56 45 0D 50 52 4F 56 45  44 20 54 48 4F 53 45 20  |VE.PROVED THOSE |
00001A70: 54 48 49 4E 47 53 20 54  48 41 54 20 C9 20 48 41  |THINGS THAT . HA|
00001A80: 56 45 0D 43 4C 41 49 4D  45 44 2E 0D 0D 20 20 20  |VE.CLAIMED...   |
00001A90: 20 C9 20 57 49 53 48 20  54 48 41 54 20 54 48 4F  | . WISH THAT THO|
00001AA0: 53 45 20 57 48 4F 20 52  45 41 44 20 54 48 49 53  |SE WHO READ THIS|
00001AB0: 0D 43 4F 55 4C 44 20 4C  45 41 52 4E 20 41 53 20  |.COULD LEARN AS |
00001AC0: 4D 55 43 48 20 41 53 20  C9 20 44 49 44 2E 20 20  |MUCH AS . DID.  |
00001AD0: C9 46 20 59 4F 55 0D 57  41 4E 54 20 54 4F 20 4C  |.F YOU.WANT TO L|
00001AE0: 45 41 52 4E 20 53 4F 4D  45 54 48 49 4E 47 2C 20  |EARN SOMETHING, |
00001AF0: 54 52 59 20 54 4F 0D 46  49 47 55 52 45 20 4F 55  |TRY TO.FIGURE OU|
00001B00: 54 20 48 4F 57 20 54 4F  20 45 58 50 4C 41 49 4E  |T HOW TO EXPLAIN|
00001B10: 20 49 54 20 54 4F 0D 53  4F 4D 45 4F 4E 45 20 45  | IT TO.SOMEONE E|
00001B20: 4C 53 45 2E 0D 0D C6 C5  CE C4 C5 D2 27 D3 20 CE  |LSE.........'. .|
00001B30: CF D4 C5 3A 20 D2 49 47  48 54 20 59 4F 55 20 41  |...: .IGHT YOU A|
00001B40: 52 45 2C 0D CD 41 55 52  49 43 45 2E 20 20 C9 20  |RE,..AURICE.  . |
00001B50: 4C 45 41 52 4E 45 44 20  51 55 49 54 45 20 41 20  |LEARNED QUITE A |
00001B60: 42 49 54 20 46 52 4F 4D  0D 59 4F 55 52 20 41 52  |BIT FROM.YOUR AR|
00001B70: 54 49 43 4C 45 53 20 41  4E 44 20 41 4D 20 4C 4F  |TICLES AND AM LO|
00001B80: 4F 4B 49 4E 47 20 46 4F  52 57 41 52 44 0D 54 4F  |OKING FORWARD.TO|
00001B90: 20 53 45 45 49 4E 47 20  4D 4F 52 45 20 49 4E 20  | SEEING MORE IN |
00001BA0: 54 48 45 20 4E 45 41 52  20 46 55 54 55 52 45 2E  |THE NEAR FUTURE.|
00001BB0: 0D 0D 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |..              |
00001BC0: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001BD0: 20 20 20 CD CA 0D 20 20  20 20 20 20 20 20 20 2A  |   ...         *|
00001BE0: 2A 2A 2A 20 C5 4E 44 20  4F 46 20 D4 45 58 54 20  |*** .ND OF .EXT |
00001BF0: 2A 2A 2A 2A 0D                                    |****.           |
..^U:ZERO.          BYTES: STRING SPEED.
.            BY MAURICE JONES..    ON LO
ADSTAR #65 I DESCRIBED HOW.ARRAY VARIABL
ES AND SIMPLE VARIABLES.WERE STORED.  IN
 THE CASE OF STRING.VARIABLES ONLY THE N
AME, LENGTH, AND.TWO POINTERS ARE STORED
.  THE.POINTERS SHOW WHERE THE STRING IS
.STORED.  THE ACTUAL STRINGS ARE.STORED 
EITHER IN THE CODE OR AT THE.TOP OF BASI
C RAM, EXTENDING DOWNWARD..THIS LATTER M
ETHOD OF STORAGE LEADS TO.THE TOPIC OF G
ARBAGE COLLECTION......    IF THE STRING
 APPEARS IN THE CODE,.THE POINTERS WILL 
POINT INTO THE CODE,.AND NO NEW MEMORY W
ILL BE NEEDED..STRINGS CREATED BY STATEM
ENTS SUCH AS.A$="THIS IS A STRING" AND S
TRINGS.READ FROM DATA STATEMENTS WILL BE
.STORED THIS WAY...    STRINGS INTRODUCE
D INTO THE.PROGRAM BY GET, STR$, OR BY.C
ALCULATION, SUCH AS A$=C$+D$, ARE.STORED
 AT THE TOP OF BASIC RAM.  EACH.SUCCESSI
VE STRING IS STORED IN THE.FIRST FREE AR
EA CONTAINING ENOUGH ROOM.FOR THE ENTIRE
 STRING.  THIS PROCESS.CONTINUES UNTIL T
HE COMPUTER FINDS.THAT THE SPACE BETWEEN
 THE LAST STRING.AND THE TOP OF ARRAYS I
S TOO SMALL FOR.THE CURRENT STRING..    
WHEN THIS HAPPENS, THE GARBAGE.COLLECTIO
N ROUTINE ATTEMPTS TO.REORGANIZE THE SPA
CE ABOVE ARRAYS...    TO SEE WHY IT MAY 
BE POSSIBLE TO.REORGANIZE THE SPACE WITH
OUT LOSING.VARIABLES, CONSIDER A PROGRAM
 WHICH.USES A$ AND B$ OVER AND OVER.  SU
PPOSE.THAT EACH IS STORED IN HIGH MEMORY
 AND.EACH TAKES ON THESE VALUES IN THIS.
ORDER: A$ IS"CAT", A$ IS "BIRD", B$ IS."
NUMBER" AND FINALLY B$ IS "LETTER.".THE 
TOP OF MEMORY WILL NOW CONTAIN:..     LE
TTERNUMBERBIRDCAT......    IF THE GARBAG
E COLLECTION ROUTINE.IS USED, THE COMPUT
ER WILL LOOK AT THE.POINTERS OF ALL VARI
ABLES AND SELECT.THE ONE NEAREST THE TOP
 OF RAM.  IN.THIS CASE, IT IS A$ AND THE
 POINTERS.INDICATE THE START OF BIRD, TH
E.CURRENT VALUE OF A$.  SINCE THIS IS.TH
E HIGHEST ADDRESS FOUND, ANY STRING.ABOV
E HERE IS NO LONGER NEEDED SO THE.COMPUT
ER MOVES BIRD TO THE TOP AND THE.MEMORY 
NOW CONTAINS:..     LETTERNUMBERBIRBIRD.
......    THE ROUTINE NOW LOOKS THROUGH 
THE.ENTIRE LIST AGAIN, DECIDING WHICH.PO
INTER POINTS TO NEXT HIGHEST MEMORY.LOCA
TION.  IN OUR EXAMPLE THERE IS.ONLY ONE 
STRING LEFT, B$.  THE CURRENT.VALUE OF B
$ IS LETTER, SO THIS IS.MOVED TO THE NEX
T SPACE AFTER THE NEW.POSITION OF A$ AND
 THE MEMORY LOOKS.LIKE THIS:..     LETTE
RNUMLETTERBIRD..    THE POINTER WHICH IN
DICATES THE.BOTTOM OF STRINGS IS NOW SET
 TO THE.SPACE WHERE THE NEWLY PLACED LET
TER.STARTS.  THE OLD VALUES ARE NOT ERAS
ED.BUT WILL BE OVERWRITTEN BY THE NEXT.S
TRING...    SIMPLE ENOUGH, BUT IF THE NU
MBER.OF VARIABLES IS LARGE, THE PROCESS 
CAN.BE TIME CONSUMING.  SINCE THE SIMPLE
.VARIABLES AND THE ARRAY VARIABLES MAY.C
ONTAIN STRINGS, ALL OF THESE AREAS.MUST 
BE SEARCHED COMPLETELY FOR EACH.VARIABLE
.  IF THERE ARE 100 VARIABLES,.EACH WILL
 BE LOOKED AT MANY TIMES, AND.MORE TIME 
WILL BE REQUIRED TO MOVE.EACH STRING... 
   NOTICE THAT THE ROUTINE WORKS WITH.PO
INTERS AND LENGTH OF STRING UNTIL.THE AC
TUAL MOVE IS MADE.  EVEN THEN,.THESE NUM
BERS ALLOW THE STRING TO BE.MOVED EFFICI
ENTLY, SINCE THE START OF.THE NEW LOCATI
ON IS EASILY CALCULATED...    THIS ALSO 
MEANS THAT THE ACTUAL.MOVES REQUIRED ONL
Y A FRACTION OF THE.TIME THAT THE SEARCH
 REQUIRES WHEN.THE NUMBER OF STRINGS IS 
FAIRLY.LARGE...    THE LENGTH OF STRINGS
 HAS VERY.LITTLE EFFECT ON THE TIME REQU
IRED FOR.GARBAGE COLLECTION.  THE DOMINA
TING.FACTOR IS THE NUMBER OF STRINGS STO
RED.ABOVE THE END OF ARRAYS.  WHEN THE.S
EARCH IS MADE, VARIABLES STORED IN.THE C
ODE ARE PASSED OVER SINCE THEY.ARE NEVER
 MOVED.  RUN THE DEMO FOR.EVIDENCE OF TH
ESE STATEMENTS AND READ.THE TEXT SCREENS
 FOR MORE.INFORMATION.....    THAT ABOUT
 DOES IT FOR THE SUMMARY.OF THE STUDY, S
O NOW I WILL CLOSE WITH.SOME COMMENTS AN
D SOME SUGGESTIONS...    THIS WHOLE THIN
G WAS PROMPTED BY.JEFF JONES'S BASICS AR
TICLE ON.LOADSTAR #57, AND WHILE A FEW O
F HIS.REMARKS MAY NEED TO BE QUALIFIED, 
HIS.MAIN POINTS ARE WELL PROVED.  A FEW.
JIFFIES HERE AND THERE ARE OF NO.GREAT I
MPORT.  A FEW JIFFIES IN EACH.PART OF A 
1000 STEP LOOP ARE VERY.IMPORTANT.  MORE
 TIME IS GAINED BY.USING SHORT CODE AND 
EFFICIENT.ALGORITHMS THAN BY ATTEMPTING 
TO.CHANGE MULTIPLY TO DIVIDE OR SOME.OTH
ER SUCH DOUBTFUL SCHEME.  WORRY.MORE ABO
UT THE BIG PICTURE...    I NOW BELIEVE T
HAT GARBAGE.COLLECTION HAS BEEN BADLY HA
NDLED IN.THE LITERATURE.  THE USUAL THIN
G HAS.BEEN TO MAKE SOME PRONOUNCEMENT.WI
THOUT ANY EVIDENCE OR EXPLANATION..MY OP
INION IS THIS: IF THE NUMBER OF.STRINGS 
STORED AT THE TOP OF MEMORY IS.RELATIVEL
Y SMALL, SAY LESS THAN 60,.SERIOUS PROBL
EMS WITH GARBAGE.COLLECTION WILL ONLY AR
ISE IF.AVAILABLE MEMORY IS SMALL.  THE.P
ROBLEM, THEN, IS TO STRIKE A.BALANCE....
....    I SUSPECT THERE ARE MANY.TECHNIQ
UES THAT NEED TO BE EXPLORED.AND DISCUSS
ED, BUT I AM NOT THE ONE TO.DO IT.  I HA
D A LOT OF TROUBLE.DESIGNING PROGRAMS TO
 ILLUSTRATE THE.IDEA.  THE MODIFIED BYTE
S #57 DEMO.THAT I MENTIONED IN PART I CO
NTAINED.VERY LONG (ABOUT 140 CHARACTERS)
.STRINGS AND WAS CONSTANTLY GENERATING.M
ORE.  YET, GARBAGE WAS ONLY COLLECTED.AF
TER ABOUT SIX HANDS AND REQUIRED.ABOUT S
EVEN JIFFIES...    EMERSON SAID, "FEAR A
LWAYS SPRINGS.FROM IGNORANCE."  COULD IT
 BE THAT HE.WAS TALKING ABOUT FEAR OF GA
RBAGE.COLLECTION?...    IT SEEMS OBVIOUS
 THAT THE SPEED.AND MEMORY USAGE ARE CON
NECTED IN MANY.WAYS AND THAT THE TWO MUS
T BE.CONSIDERED TOGETHER.  I LIKE HEAVIL
Y.DOCUMENTED PROGRAMS, AND THIS STUDY.SH
OWS THAT SPEED IS NOT SERIOUSLY.AFFECTED
 BY REM STATEMENTS, UNLESS.SPACE IS A PR
OBLEM...    IN ORDER TO FULLY UNDERSTAND
 HOW.BASIC USES MEMORY, ONE NEEDS MUCH M
ORE.DETAIL THAN WAS POSSIBLE HERE.  I.ST
RONGLY SUGGEST THAT SERIOUS.PROGRAMMERS 
MUST UNDERSTAND THIS AND.SUGGEST THE SOU
RCES THAT I MENTIONED.IN PART I....    N
UMBERS AND STRINGS STORED BY.ARRAYS USE 
LESS SPACE AND ARE MORE.QUICKLY LOCATED 
THAN THOSE STORED BY.SIMPLE VARIABLES.  
I BELIEVE THAT IT.IS ONLY A MATTER OF HA
BIT THAT SO MANY.SIMPLE VARIABLES ARE FO
UND IN THE.CODE.  WITH A LITTLE ATTITUDE
.ADJUSTMENT, WE COULD SEE THIS CHANGE..I
 CANNOT SEE ANY DIFFICULTY IN.DECLARING 
ALL VARIABLES EARLY IN THE.PROGRAM NOR W
ITH DECLARING THE MOST.HEAVILY USED SIMP
LE VARIABLES NEAR THE.TOP OF THE LIST.  
A SIMPLE DIM.STATEMENT DOES IT ALL.  THE
RE'S.NOTHING WRONG WITH SOMETHING LIKE..
100 DIMA$,I,J,K,B$,C$,B,C,D,X,Y,Z..AT TH
E BEGINNING OF YOUR PROGRAM...    MY EXA
MINATION OF CODE HAS SHOWN.THAT SOME PEO
PLE DO A GOOD JOB OF.KEEPING THE NUMBER 
OF VARIABLES SMALL,.WHEREAS OTHERS SEEM 
TO BE AFRAID TO.REUSE VARIABLES AT ALL. 
 IT IS NOT.DIFFICULT TO KNOW WHEN THE VA
LUE.STORED BY A VARIABLE WILL NOT BE.NEE
DED AGAIN, SO THAT THE VARIABLE CAN.BE R
EUSED...    EVEN THOUGH I SPENT HOURS WA
ITING.FOR LONG LOOPS TO RUN, HOURS DESIG
NING.AND REVISING TESTS, HOURS READING A
ND.HOURS EVALUATING, THIS STUDY HAS BEEN
.GRATIFYING.  I BELIEVE THAT I HAVE.KEPT
 MY OPINIONS TO A MINIMUM AND HAVE.PROVE
D THOSE THINGS THAT I HAVE.CLAIMED...   
 I WISH THAT THOSE WHO READ THIS.COULD L
EARN AS MUCH AS I DID.  IF YOU.WANT TO L
EARN SOMETHING, TRY TO.FIGURE OUT HOW TO
 EXPLAIN IT TO.SOMEONE ELSE...FENDER'S N
OTE: RIGHT YOU ARE,.MAURICE.  I LEARNED 
QUITE A BIT FROM.YOUR ARTICLES AND AM LO
OKING FORWARD.TO SEEING MORE IN THE NEAR
 FUTURE...                              
   MJ.         **** END OF TEXT ****.
C64 Preview

> CLICK IMAGE PREVIEW FOR FULL MODAL