Diagnostics

Diagnostics is a unified framework for code annotation, logging, program monitoring, and unit-testing.

The annotations of diagnostics provide simple trace messages, tracing method entry and exit, checks (which potentially fail), asserts (which should never fail), invariance checking on method entry and exit, and a number of annotations for testing.

A program built with diagnostics can be compiled either at audit, debug, or production level. At audit level, each component is also checking its own correctness, e.g., each class checks its own invariance. At debug level, each component checks that it is used correctly, e.g., a method is checking its preconditions but is not asserting its loop invariants. At production level, only those checks remain which can fail on corrupt external input.

The annotations provide a stream of logging events which are delivered to number of loggers. A logger can select a number of logging events and write them to file, or it can be used by a software package to monitor failures and to react on them. In particular, a unit-testing logger checks for erroneous behaviour during unit-testing.

Download

For Debian and Debian-based distributions see also http://packages.debian.org/diagnostics

Latest News

Helmut Veith 1971-2016

It is with the deepest sadness that we announce Helmut Veith’s passing on March 12, 2016. Helmut was a brilliant researcher, an inspiring collaborator, a stimulating teacher, a generous friend, and a wonderful father and husband. He leaves a void that will be impossible to fill. Our thoughts are with his family and friends.

Continue reading

Profil article on women in logic

A recent article in the Austrian weekly Profil about female logicians in Austria is featuring Agata Ciabattoni, Martina Seidl, Laura Kovacs, Magdalena Ortiz, Marijana Lazic, Shqiponja Ahmetaj, and Neha Lodha. All women are affiliated with the Doctoral College Logical Methods in Computer Science.  

Continue reading

Full news archive