Under the Cogito system, a program is first specified in a formal language (Sum). Then automated tools are used to validate the specification and construct an imperative implementation (currently in Ada&tm;). If it is eventually completed, the Cogito project could conceivably make code checking obsolete. Until then it is relevant only as a possible source of ideas for general correctness proving techniques.
URL: http://www.svrc.it.uq.edu.au/Cogito/
Runs on: The whole Cogito toolset runs on Linux, and most tools run on most flavors of Unix.
Pros:
Cons:
Rating: Not Recommended. Cogito seems only tangentially related to our project.
Classification:
Static vs. Dynamic: Static
Library vs. Instrumenting: Instrumenting
Testing vs. Production: Testing
Opaque vs. Clear: Clear
List vs. Heuristic: Heuristic
Conservative vs. Liberal: Conservative
Concurrent vs. Single Program: Single Program
Alert vs. Fix: Alert with location and nature of error in code
Evaluated by Homer Briggs on 8/21/2000