Re: Random testing
Posted by EQF on November 03, 2013 at 01:31:14:

Other projects are being worked on. And they can at times keep me away from my Internet connection for a few days. I just got back active on the Internet after such a lull.


One of my past recommendations for you was to work with me on developing a more advanced version of the WWWBoard program. It would make it possible for these long programming threads to actively display just the most recent entries on this present Web page. Others would still be visible by clicking on the right thread URLs at the bottom of a given page. As it is, these long threads are causing other threads to quickly disappear down the Web page. That is not a serious problem. But the solutions would be so easy to create that they would probably be worth the very small amounts of effort involved.


The basic problem with the part of the XBasic or Python or Perl programming effort that I have been discussing is that it does not exclusively involve my own work. Instead it relies on volunteer efforts by other programmers. And when programmers are doing volunteer work they will generally work with only their favorite language.

The most practical way to deal with that appears to be create a central control program such as the Perl program I mentioned. Then other programmers who want to work on specific parts of the project can then create .exe programs using their own favorite language that can be called to do specific things such as generating charts. That way the job gets done. And everyone is happy and productive.

However, one of the most important parts of such an effort is working with .exe programs that are not processor time hogs. They need to be willing to let other programs control the processor while they are waiting for instructions to perform some task. Or, they need to be able to load extremely fast and then import and process large data files equally fast.

Roger’s favorite TrueBasic could not do either of those things. So, another similarly structured language needs to be selected that he is willing to work with. FreeBasic looked promising but was not adequate for several reasons. I don’t know why we did not take a closer look at XBasic when we were looking around at other languages. I seem to remember that we considered it.


I can’t presently rewrite my main Perl earthquake forecasting program in another language. That would take weeks or months of effort. But, I can start creating “call” type subroutines written in other languages for doing specific things such as fast calculations and chart generation. Gnuplot is presently being used for such an application. And XBasic looks like it might work even better. Python also looks like it would work if the right libraries are used. I still need to determine if Perl can link a module that will let it do faster calculations.

Perl is also science programmer friendly once you get to a certain point on the learning curve. For example, it requires virtually no array declarations etc. You can create a new array or change the size of an existing array at any place in the program by simply adding new array points. It automatically expands the array parameters. However, there is still that calculation speed problem. It also lets you jump out of loops etc. by using very crude GO TO statements. And the loop just ends. The program does not wait for you to return to the loop and formally end it.


The following is another language that I just learned about. You might want to consider it yourself. Or at least look at the speed comparison chart on that Web page.

http://julialang.org/

It is specifically designed for scientific work and is apparently comparable with C for calculation speed. I am assuming that it can draw charts as well as or better than XBasic. And it is an actively supported language. So the documentation and compatibility with Windows etc. should presently be and should remain fairly advanced.


Proposed Project

If you would be interested in doing some XBasic code work at some point in time then the following would be a good startup project. You don’t need to actually develop the code. I could do that myself and you could comment on it.

An XBasic program would be created that plots data points based on the content of some data files that were generated by Perl or XBasic.

An .exe version of the XBasic program would be created that would start running when called by Perl or started using a Windows shortcut. It would be sent instruction information by a Perl program – do this now, or do that. And once running it would check some file perhaps 10 times a second to see if there were any new instructions such as “reread the data files and generate a new plot.” When it saw an “exit” instruction it would exit.


Roger and I developed a FreeBasic version of one of my programs called "WaveChart." And creating an XBasic version of that program would probably be the next logical step. The FreeBasic version got too complicated. The program lets people compare a variety of data such as sun and moon locations in the sky with ocean and Solid Earth Tide data etc.

If Roger or anyone else were interested in using XBasic for such efforts then I myself would probably start moving in that direction. Otherwise I will likely start looking into using Python or Julia or perhaps C ++.



Follow Ups:
     ● Re: Random testing - Skywise  01:29:00 - 11/3/2013  (101269)  (1)
        ● Re: Random testing - EQF  02:34:51 - 11/3/2013  (101271)  (0)