Posts
76
Comments
310
Trackbacks
7
Microsoft Research - Spec#

http://research.microsoft.com/specsharp/

Overview

The Spec# programming system is a new attempt at a more cost effective way to develop and maintain high-quality software.  Spec# is pronounced "Spec sharp" and can be written (and searched for) as the "specsharp" or "Spec# programming system".  The Spec# system consists of:

  • The Spec# programming language.  Spec# is an extension of the object-oriented language C#.  It extends the type system to include non-null types and checked exceptions.  It provides method contracts in the form of pre- and postconditions as well as object invariants.
  • The Spec# compiler.  Integrated into the Microsoft Visual Studio development environment for the .NET platform, the compiler statically enforces non-null types, emits run-time checks for method contracts and invariants, and records the contracts as metadata for consumption by downstream tools.
  • The Spec# static program verifier.  This component (codenamed Boogie) generates logical verification conditions from a Spec# program.  Internally, it uses an automatic theorem prover that analyzes the verification conditions to prove the correctness of the program or find errors in it.

A unique feature of the Spec# programming system is its guarantee of maintaining invariants in object-oriented programs in the presence of callbacks, threads, and inter-object relationships.

posted on Saturday, October 14, 2006 6:58 PM Print
Comments
Gravatar
# re: Microsoft Research - Spec#
PATRICK32Tamika
4/12/2011 8:11 PM
  
My comrades tell that I cheat because I purchase essay papers at essay writing service. Do you guess that is right? I do not think they can judge me!

Post Comment

Title *
Name *
Email
Url
Comment *  
Please add 4 and 3 and type the answer here: