At present time, the programmers may choose from a num- ber of streaming languages. They cover various aspects of the development process of streaming applications; however, speci cation of complex or runtime-dependent parts of the applications still remains a great challenge.
We have anal- ysed a large amount of requirements raised by the develop- ment of multiple data streaming parallel applications and proposed a novel language called Bobolang. It contains syn- tactic and semantic features which allow the programmer to naturally solve most of the problems, which we met in the design of streaming applications.
The language is used to specify the structure of the whole application as well as the inner structure of each operator. Thanks to the properties of the language, Bobolang can create an optimized evaluation plan which is capable of making the best use of the avail- able hardware resources.
The language has been employed in several practical problems and it has proven itself to be a very powerful tool for the development of data-intensive parallel applications.