Dafny is a programming language with a program verifier. As you type in your program, the verifier constantly looks over your shoulders and flags any errors. Dafny is currently spread across 3 sites:

Read more:
Dafny has just moved to this site. Some documentation is still found at the old site, http://boogie.codeplex.com, but it will soon move here.

The language itself draws pieces of influence from:
  • Euclid (from the mindset of a designing a language whose programs are to be verified),
  • Eiffel (like the built-in contract features),
  • CLU (like its iterators, and inpiration for the out-parameter syntax),
  • Java and C# (like the classes, although Dafny does not support subclassing),
  • ML (like the module system, and its functions and inductive datatypes, but Dafny does not support higher-order features), and
  • Coq (like the ability to include co-inductive datatypes and being able to write inductive and co-inductive proofs).

Last edited Oct 31, 2012 at 1:42 AM by rustanleino, version 5