Re: internal storage
- Posted by Michael Raley <thinkways at yahoo.com> Sep 20, 2004
- 422 views
Jim Hendricks wrote: <snip> > My question is are string sequences then stored as 4 byte atoms or as > 1 byte atoms? <snip> Yes, string sequences as stated are really just numeric sequences. {65,66,67,3265} is internally the same as "ABC" & 3265 You can sorta obscure plain text passwords in source files by writting them in sequence format i.e. pwd = {325,330,335}/5 There are two workarounds that I tried because I had to split 24 megabyte revenue usage reports apart, creating a new subreport for each revenue department key found in the page headers. This would run very slow on the old win 95 machines it had to be run on, constantly chugging through virtual memory. The first was to try to internally pack three atoms into one integer (the library is in the archives) so incompress({65,66,67}) would return {656667} which runs pretty slow too with really big sequences. The faster way was to create a 'bucket' routine to handle the file input, which allows me to set a limit on the amount of text held in memory, 100,000 lines or so. The splitter routine does not read the file directly, it reads from a buffer sequence until it reaches the end of the bucket, and calls the bucket fill procedure again.