Category:SPARK: Difference between revisions

From Rosetta Code
Content added Content deleted
(Undo revision 88746 by PhilThornley (Talk))
m (Added reference to c.l.a for talking about SPARK.)
Line 32: Line 32:


The SPARK tools are freely available under the GNU GPL. The SPARK language definition is proprietary - the main copyright is held by [http://www.sparkada.com/ Altran-Praxis].
The SPARK tools are freely available under the GNU GPL. The SPARK language definition is proprietary - the main copyright is held by [http://www.sparkada.com/ Altran-Praxis].

The comp.lang.ada newsgroup is the main forum for discussing or asking questions about SPARK.

Revision as of 08:23, 20 August 2010

Language
SPARK
This programming language may be used to instruct a computer to perform a task.
Execution method: Compiled (machine code)
Garbage collected: Allowed
Parameter passing methods: By reference, By value
Type safety: Safe
Type strength: Strong
Type compatibility: Nominative
Type expression: Explicit
Type checking: Static
Lang tag(s): Ada
See Also:
Listed below are all of the tasks on Rosetta Code which have been solved using SPARK.

SPARK or SPARK Ada is a sub-language of Ada, supplemented with annotations (formal comments). Its primary purpose is for high-integrity applications, where static analysis of the source is used to determine properties of the program.

The properties that SPARK code can be analysed for are:

  • Freedom from data-flow errors.
  • Freedom from information flow errors.
  • Freedom from information flows that violate safety or security.
  • Type safety (freedom from run-time errors).
  • Functional correctness.
  • Absence of dead paths.

The annotations always begin, on each line, with the Ada comment symbol “--”, so all SPARK programs comply with the Ada standard.

A SPARK program can be compiled by any Ada compiler or processed by any other Ada tool.

The annotations state the required properties of a program. Different properties may require different types of annotation.

A description of the SPARK Proof process is here.

The SPARK tools are freely available under the GNU GPL. The SPARK language definition is proprietary - the main copyright is held by Altran-Praxis.

The comp.lang.ada newsgroup is the main forum for discussing or asking questions about SPARK.

Subcategories

This category has the following 3 subcategories, out of 3 total.

Pages in category "SPARK"

The following 8 pages are in this category, out of 8 total.