AW: [Oberon] newbie questions about oberon and bluebottle

Friedrich, Felix friedrich at gsf.de
Thu May 26 12:22:46 CEST 2005


 > 6. Which is BlueBottle and Oberon System differences?

The Oberon System (Language+GUI) has been developed by J.Gutknecht, N.Wirth and others in the late 1980s/ early 90s. It is a cooperative multitasking system, i.e. there can be more than one "processes" but whenever one process blocks the system, the system stands still (as it was often the case in the cooperative multitasking system Windows 3.1). This is managed by tasks that can be hooked into the "Oberon Loop" and they are called whenever their time have come. As it was at that time not the main objective of the authors, there was only little concept about concurrency of more than one processes in the original Oberon from - say - 1988.

Meanwhile a REAL concept for more than one processes has been added not only to the Oberon System but even to the _Language_ Oberon (Active Oberon / Bluebottle): Active Objects. The interesting and (as far as I'm informed) new thing about it is the tight interaction of Objects and a concept of concurrency (like Threads/Processe). By adding very few and highly intiutive constructs to the language Oberon (EXCLUSIVE sections, ACTIVE objects and AWAIT statemets plus a Timer Object), a very fast mechanism for light weight processes joint with the handling of concurrent access to joint resources _on_Object_level_ has been added to the Language. (compare the mission statement: make it as simple as possible but not simpler). In fact, the system is fast as you can read in the PhD of P.Muller and measure yourself by installing and using the system. 
Now, the Bluebottle system contains a very clever and powerful implementation of a GUI that exploits the new language constructs. Moreover it demonstrates the concepts of concurrency by way of examples as - for example - a parallel compiler (which is quite a good "example"!).  

My personal opinion: the power of Active Oberon / Bluebottle is caused by the simplicity of language and the parsimonious handling of extension thereof. Have a look at the "Spektrum der Wissenschaft" / "Scientific American", Vol. 4 or 5 (?) of this year. In an article about the future of computers, that I have not at hand at the moment, it is stated that, since there are theoretical limits for the classical serial computers, in the near / middle future, computers are/will be equiped with more than one processors / processor cores instead of with higher CPU frequencies (keyword "Hyper Threading"). The author suggests that the SOFTWARE INDUCSTRY RUNS INTO SEVERE PROBLEMS CAUSED BY A LACK OF GOOD CONCEPTS FOR THE DEVELOPMENT OF MULTICORE APPLICATIONS. Now, the Active Oberon language extension together with the exemplified core of the new multithreading operating system Bluebottle is at least a good step in the direction of solving this problem. Without clear basic concepts, an intuitive and readable language and reliable safety mechanisms both in the language and the operating system, many programmers will come up against a brick wall when they start with the implementation of multicore applications and parallel algorithms.

Only some thoughts...

All the best,
Felix. 



-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/ms-tnef
Size: 4314 bytes
Desc: not available
Url : https://lists.inf.ethz.ch/pipermail/oberon/attachments/20050526/aa53391c/attachment-0001.bin


More information about the Oberon mailing list