HC to Rev conversion
Bill Marriott
wjm at wjm.org
Wed Dec 31 11:52:10 EST 2008
Hi Dale,
> I don't know what the idle does. Does Rev auto-compact when cards/ data
> are deleted?
Rev is RAM-based; all your stacks and data are in memory and only saved to
disk when you explicitly "save" the stack -- either with a command in a
script, by using the Save command in the File menu, or when answering "Save"
to the dialog which appears when you try to close a stack that has been
modified. The organization of data in memory is handled transparently by
Rev. Compacting is not necessary.
HyperCard is disk-based. All changes are more-or-less immediately written to
disk. The changes are tacked on to the end of the file, because it would be
very slow to rewrite the whole file with every modification. As a result,
the structure can become quite disorganized over time. For example, you add
a sentence to card 1. The original information for card 1 is stored at the
beginning of the file, but your new sentence is at the end of the file.
Compacting essentially re-writes the file in a tidy format where all related
information is back together again.
The "idle" handler in HyperCard was a convenient way to handle housekeeping
chores when nothing else was happening in the stack. However, it wasn't very
efficient for a variety of reasons. It should be avoided in the Rev version
of your system for two reasons. One, because the compacting is not needed
(therefore the reason to have an idle handler at all is obviated); two,
because Rev has more sophisticated ways (e.g.: send in time) of handling
housekeeping tasks that should be handled periodically.
- Bill
More information about the use-livecode
mailing list