Reverse a list
Richard Gaskin
ambassador at fourthworld.com
Mon Feb 16 18:55:54 EST 2015
Bernd wrote:
> funny, nobody likes "private"
>
> It save up to 20 % all else equal.
>
> On about 44000 lines 5 items on each line
>
> with private 86 ms, without 106 ms LC 6.7.2
>
> with private roughly 180 ms, without 200 ms on LC 7.0.2 rc2 (times vary much
> more on LC 7.0.2 rc2 than on LC 6.7.2
Ooooh, good find! I just ran a quick test:
on mouseUp
put 100000 into n
--
put the millisecs into t
repeat n
put Foo1() into r2
end repeat
put the millisecs - t into t1
--
put the millisecs into t
repeat n
put Foo2() into r2
end repeat
put the millisecs - t into t2
--
put t1 && t2
end mouseUp
function Foo1
return "Hello"
end Foo1
private function Foo2
return "Hello"
end Foo2
Result:
95 49
As with speed differences with the various forms of "repeat", this is
also somewhat intuitive once you pause and think about it, given the
variety of ways public handlers can be accessed and the extremely narrow
scope of private routines.
But even then, I must admit that the speed difference is larger than I
could have anticipated. I would imagine that a handler in the same
script as the caller would be faster than having it just about any other
place, but to limit its scope trims the execution time by a surprising
amount.
I think my new habit is to declare everything as private unless I know I
need it available to other scripts.
Thanks again. Excellent discovery.
--
Richard Gaskin
Fourth World Systems
Software Design and Development for the Desktop, Mobile, and the Web
____________________________________________________________________
Ambassador at FourthWorld.com http://www.FourthWorld.com
More information about the use-livecode
mailing list