Just a couple of things I found that might need discussing before modifying.
At the moment, the article says:
You can sometimes rewrite For loops and the commands inside them so you can remove the fourth argument.
However, I believe that this advice is not the best advice. Whilst saving one byte (on removing a comma) is compacting the program, it losses speed. You see, when I saw the code I thought to myself that "wouldn't it be slower for the program to have to calculate 8-X before displaying, rather than just displaying X?". But what use is a theory without proof. So seems as we can't measure the number of bars and pixels using the "Disp" command, I used my trusty timer to do the following tests:
:For(X,2000,1,-1 :Disp X :End
:For(X,1,2000 :Disp 2000-X :End
The results: Test #1 scored 2minutes 8.386seconds, Test #2 scored 2minutes 15.977seconds.
Is the size difference worth the speed difference?
Secondly, I think it is worth mentioning that with the delay tip ("rand(#") that if X is large enough, the program will run out of memory from trying to generate such a large list, and then return a memory error. We should mention that for larger delays, it is more recommended to have a little delay in a loop, for example:
:For(X,1,50 :rand(5 :End
What do you guys think?
Cheers ~ James Kanjo