BWAA released, new releases of Ast2Cfg, Cfg2Dot From the abstract of my thesis:



"Busy waiting occurs whenever a process repeatedly checks a condition until it becomes true without influencing that condition itself, thereby effectively wasting system resources and introducing the risk of system failure due to race conditions. Hence, busy waiting is considered bad programming practice and can be avoided by the use of higher communication facilities.



In the development of critical systems, for which correctness and robustness are of vital importance, software quality assurance is of great value. However, it is difficult and impractical to manually discover busy waiting in existing program code, which is why a static analysis tool is needed for that purpose."



BWAA, the Busy Wait Analyser for Ada, is such a tool based on static control flow analysis methods and uses the CFG-based datastructures provided by Ast2Cfg. It is now available for download. Detailed documentation can be found in my thesis which may also be downloaded.



Development of Ast2Cfg has also been continued and for Cfg2Dot a few bugs were fixed. Check out the new versions.

Ast2Cfg Presentation Slides FOSDEM'09 available The slides for the presentation in the Ada Developer Room on the FOSDEM'09 which will take place today are ready for download.

FOSDEM'09, New Release of Ast2Cfg and Ast2Dot Next weekend we will present the Ast2Cfg project on the Free and Open Source Software Developers' European Meeting, the FOSDEM'09. The presentation will take place on Sunday from 12:00 to 13:00 in the Ada Developer Room organised by Ada-Belgium. This is a good occasion to release new versions of Ast2Cfg and Ast2Dot, since quite a few changes were made since the last release. A lot of nasty bugs were resolved, hopefully without introducing too many new ones, and some necessary changes to internal data structures guarantee more stability. So, do not hesitate to download the new versions.

Happy New Year! The Flow World Team wishes you a Happy New Year! All the best for 2009! Still looking for a new year's resolution?

Ada-Europe 2008 We are looking forward to present our recent paper at the 13th International Conference on Reliable Software Technologies the Ada-Europe 2008 in Venice. Our presentation will be on Thursday, June 19. After our talk, we will of course make the slides available for download.

New Release of Ast2Cfg and Cfg2Dot There is a new version of Ast2Cfg and Cfg2Dot available in the download section. Especially Ast2Cfg has undergone heavy developement because lots of new features have been introduced in the post transformation phase. We also fixed a lot of bugs, so usage of older versions is not recommended.

New Ast2Cfg version Version 0.1.1 of Ast2Cfg is available in the downloads section. As the new version number indicates, this new release contains only bugfixes, but no new features.

Technical report online. "Generating Control Flow Graphs for Ada Programs" is the title of our technical report that basically documents Ast2Cfg. It was finished last month, however, additional proofreading and acquiring a report number delayed the download until now. If you are seeking in-depth information on Ast2Cfg don't hesitate downloading it.

New Cfg2Dot version When we first released Cfg2Dot a few days ago, we forgot that it was still lacking the possibility to control the level of output. For us, this was perfectly fine, since we always wanted to see the maximum output, however, most people certainly don't want several megabytes of status messages. Now, in version 0.6.1, per default only errors and warnings are printed (apart from the dot output of course). With the option -v Cfg2Dot gets more verbose and -vv leads to maximum output.

The downloads are ready. Finally, we found the time to create some tarballs for our recent projects. All of them are related to the static analysis of Ada programs. Let's start with the smallest program, Ast2Dot, which outputs the abstract syntax tree as it is generated by ASIS in dot format. The version 0.9.1 which is now available in the downloads section is pretty well tested and won't be modified much anymore.



The project we have been heavily working on for the last months is Ast2Cfg which is a library that generates a control flow graph out of the abstract syntax tree that is provided by ASIS. Its version number is currently 0.1, however, it already works pretty well.



Also Cfg2Dot made it to a release. It outputs the control flow graphs generated by Ast2Cfg in dot format, so be sure to install Ast2Cfg first before you download Cfg2Dot. Its version number is 0.6 since the code is also pretty mature. If you want to use Ast2Cfg, have a look at how Cfg2Dot uses it first, it's a good example.



Have fun, and don't hesitate to contact us in case something doesn't work as expected.