Arrays in Rev (long)
Troy Rollins
troy at rpsystems.net
Mon Jul 12 22:53:17 EDT 2004
On Jul 12, 2004, at 10:10 PM, J. Landman Gay wrote:
> If speed doesn't matter, then base your storage methods on
> convenience. If speed does matter, use variables.
Alright. Noted. (Though Richard's article on stack properties suggested
otherwise.)
BUT, variables are less powerful (or at least more clumsy) than I am
used to, OR I'm using them wrong, and I don't think so. Arrays in Rev
are great - but they are not multi-dimensional, and every simulation
I've seen so far has holes in capability you could throw a global
through, again, to my level of understanding. While some of the custom
solutions that have been offered up undoubtedly serve their masters
well, they are not strong in a generic sense.
For instance, if you use Director, you know that casts are somewhat
like "resource stacks." They have the same "not as fast as a variable"
issue, so at times, I store data in casts, but then on program launch,
rip all the contents of the cast into a nested array... images, text...
everything. This gives me amazing speed of variables, and the pathing
ease of a multi-D array, but the storage of a cast. On close, you just
put any changes back to the cast and save it.
If you don't use Director, or any language which is list-based,
consider a Multi-D array to have the speed of a standard array, the
pathing finesse of XML, and the RAM-based storage capacity of a stack
(images, other binary data, text, properties.)
In your case, it sounds to me, like when things get multi-dimensional
in Transcript, you are probably doing something multi-line, correct? Or
do you relate multiple arrays to each other?
Gosh, I hate to dwell, but it seems like there is a choice between
power, speed, and pathing elegance being made here, and for the nature
of many of my applications, I need all three. Access time, and the
ability to locate what I am looking for directly is pretty critical.
Good lord, am I going to have to write or adapt one of the custom
solutions like the other guys have, just in order to get variables that
have power like I am used to? I think I'd rather just continue my huge
unlearning process and find some solution which is the way Rev WANTS to
work. Whatever that is.
Perhaps it is time to bone up on chunking techniques, arrays, and
multi-line data in arrays?
My standard disclaimer - I'm not trying to be difficult, just trying to
get the best performance from my applications, since their nature
demands best performance.
--
Troy
RPSystems, Ltd.
http://www.rpsystems.net
More information about the use-livecode
mailing list