Contents
ALGORITHMS
Site map
Links
Site and author
News
About the site
FAQ
Contact
TERMS OF USE
 

Contents

Website History

August 14, 1999. Vladimir Bystritsky introduces the first version of the website in Russian. The site contains algorithms as flow charts, read by a special program - flowchart editor. The site visitor may translate the flowchart into a required programming language manually or use an automatic system for translating flowcharts into programs in Pascal. You cannot apply the automatic translation system to other languages, since the text in the flowchart is composed in Pascal.

1999 - 2002. The period, marked by great achievements, which still serve as a basis for the website. About a hundred and a half algorithms were collected, an overwhelming majority of which consists of mathematic algorithms. One of the reasons is the author's mathematical education; others are caused by the limitations, inherent to flowcharts in general.

2002 - 2003. Within this period the website is at 'standby mode', so all design and maintenance works for the site stop. In our correspondence, Vladimir and I, Sergey Bochkanov, are discussing various variants of the site development. Vladimir was the first to suggest that it would be a nice idea to create a language processor, intended for translation from flowcharts into Basic, C++. At that time, this goal seemed unachievable.

Spring 2003. The discussion gradually faded out, as no further steps were planned at that time. Still, Vladimir's idea about writing a translation program was lingering in my mind.

Summer 2003. The language processor is created. A program written in AlgoPascal may be easily converted into programs in Pascal, C++, Basic.

Autumn 2003. The works on a new version of the website are carried out. Flowcharts are translated into AlgoPascal; web-pages are redesigned.

December 7, 2003. A new website is introduced. The contents are still the same, though provided in three programming languages at the same time. The server version of the language processor allows the user to download a code in the required language.

2004 - 2005. Vladimir loses his interest in the website and hands it over to me. Numerical methods are chosen as the field for specialization.

Spring 2006. The implementation of a large-scale project, related to the website translation into English, has started. If you are reading this text in English, this project may be regarded as successful :)

Website Structure

Originally, the website contained the implementations of the algorithms as flowcharts - the files of a special format, read by the program "Flowchart Editor", made by Vladimir. This was designed to make the implementations of the algorithms independent from the programming languages. Such approach allowed translating a flowchart into any required programming language manually. Unfortunately, the automatic translation was only provided for Pascal, which was quite limited in its capacities and required manual completion of the code. Meanwhile, the goal remained the same - convenient, adequate automatic translation into as many programming languages as possible.

The solution of this problem was creation of AlgoPascal (algorithmic Pascal). This language is a dialect of Pascal, which includes only those syntactical elements, which are common for the majority of the programming languages. AlgoPascal is a very convenient tool for mathematical programs, because the programs in this language can be easily translated into other programming languages by the computer.

For Those Willing to Help

As it was mentioned before, the website is maintained not only due to the efforts of the author, but also the assistance of the visitors, who are willing to contribute to its maintenance. For instance, somebody needs to solve a computational problem. He or she codes a software program, required for its solution and obtains results. Then a source code remains, which is normally stored in the archive as a back-up copy. This source may be shared with other people.

What are the advantages of contributing the source code to ALGLIB? First of all, thanks to the automatic translation, the results of your efforts will be appreciated by the programmers, who will be able to use them in various programming languages. This will result in enlarging the number of users. Secondly, it will be easier to find it at a specialized website than at one's personal pages or one of the collections of sources of general purpose. Thirdly, this may serve as advertisement - besides copyright, the library will contain the links to your personal page/website.


 
 
Sergey Bochkanov, Vladimir Bystritsky
Copyright © 1999-2008