comp.lang.ada
 help / color / mirror / Atom feed
From: Phil Thornley <phil.jpthornley@gmail.com>
Subject: Re: SPARK : third example for Roesetta - reviewers welcome
Date: Tue, 17 Aug 2010 02:15:44 -0700 (PDT)
Date: 2010-08-17T02:15:44-07:00	[thread overview]
Message-ID: <e614687a-58ce-499f-a6af-a5893cbdc812@q22g2000yqm.googlegroups.com> (raw)
In-Reply-To: 4c69cd5f$0$2375$4d3efbfe@news.sover.net

On 17 Aug, 00:43, "Peter C. Chapin" <chap...@acm.org> wrote:
> On 2010-08-16 18:38, Yannick Duchêne (Hibou57) wrote:
>
[...]
> > For the time, unless some news comes in the place, I will end with this
> > conclusion: SPARK's not a language, that's Praxis's tool.
>
> When people ask me what SPARK is about I tell them it's an annotated
> subset of Ada together with a tool set that can be used for deep static
> analysis of that annotated language. It seems to me that SPARK is both a
> language and a tool.
>
> Perhaps this gets back to a question Phil raised: does it make sense on
> Rosetta to differentiate between SPARK and SPARK+proofs?
I've thought about that one a bit more and decided that it's probably
not a good idea - using SPARK is much more of a continuum of
approaches.
[Which is a Very Good Thing(TM) - new users can start by ignoring
proof completely.  Then start proving that the code is type safe
without having to even think about formal specifications - and
complete their type safety proofs ranging from the completely informal
(proof by review) up to the completely formal (check annotations,
where they work, and the Proof Checker otherwise).  Then move into the
formal spec world of contracts expressed through pre and post
conditions.]

I'm going to try and come up with an explanation of SPARK for Rosetta
Code that covers all the ground, but is as succinct as possible (so no-
one should be holding their breath for that).  I'll link out to
detailed descriptions where possible.

[...]
> > By the way, if this is really a Praxis's tool as I suppose now, do I
> > have to understand there will be always one single implementation of
> > SPARK and a single provider in this area ?
>
> That's an interesting question.
>
> Oracle is suing Google over Google's use of Java in Android. I suppose
> this is the nasty quagmire one gets into whenever one starts using
> proprietary languages. Thankfully Ada has an international standard so
> the Ada community can avoid some of that. However, there is no
> international standard for SPARK. At least not as far as I know.
That was one of the first questions that the Annex H Rapporteur Group
looked at when it was formed following the publication of the Ada95
standard.  Should the Group define a 'safe subset' for Ada and, if so,
should that subset be SPARK?  The Group fairly quickly decided against
defining a standard subset so the question about SPARK never arose.

The tools are now GPL'ed, but the documentation is all copyright
Altran-Praxis and the SPARK LRM is also Crown Copyright (probably
after some early funding from the UK MoD).  I don't know enough about
these issues to say what effect that has on restricting other
organisations' ability to develop new versions of the language and
tools.

> ... Will it become the Java of the formal methods community?
Not until Altran-Praxis start making a great deal more money out of it
than they do at present.

Cheers,

Phil



  reply	other threads:[~2010-08-17  9:15 UTC|newest]

Thread overview: 61+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-08-15  6:17 SPARK : third example for Roesetta - reviewers welcome Yannick Duchêne (Hibou57)
2010-08-15  6:27 ` Yannick Duchêne (Hibou57)
2010-08-15  6:35 ` Jeffrey Carter
2010-08-15  6:39   ` Yannick Duchêne (Hibou57)
2010-08-15 18:42 ` Phil Thornley
2010-08-15 19:32   ` Yannick Duchêne (Hibou57)
2010-08-15 20:12     ` Phil Thornley
2010-08-16 10:08       ` Jacob Sparre Andersen
2010-08-15 19:57   ` Yannick Duchêne (Hibou57)
2010-08-15 20:07   ` Yannick Duchêne (Hibou57)
2010-08-15 20:57   ` Yannick Duchêne (Hibou57)
2010-08-15 22:19     ` Yannick Duchêne (Hibou57)
2010-08-16  5:51       ` Phil Thornley
2010-08-16 16:42         ` Yannick Duchêne (Hibou57)
2010-08-16 17:07           ` Mark Lorenzen
2010-08-15 22:09   ` Jeffrey Carter
2010-08-15 22:27     ` Yannick Duchêne (Hibou57)
2010-08-16  4:58       ` Phil Thornley
2010-08-16  7:50       ` Stephen Leake
2010-08-16  8:37         ` Phil Thornley
2010-08-16 16:55           ` Yannick Duchêne (Hibou57)
2010-08-16 20:40             ` Peter C. Chapin
2010-08-16 22:38               ` Yannick Duchêne (Hibou57)
2010-08-16 23:43                 ` Peter C. Chapin
2010-08-17  9:15                   ` Phil Thornley [this message]
2010-08-17 10:32                     ` Peter C. Chapin
2010-08-17 19:53                     ` Phil Thornley
2010-08-17 22:15                       ` Dmitry A. Kazakov
2010-08-18 10:44                         ` Phil Thornley
2010-08-18 16:33                           ` Dmitry A. Kazakov
2010-08-19  6:19                             ` Categories for SPARK on Rosetta Code (Was: SPARK : third example for Roesetta - reviewers welcome) Jacob Sparre Andersen
2010-08-20  8:40                               ` Phil Thornley
2010-08-20  9:15                                 ` J-P. Rosen
2010-08-20  9:23                                   ` Dmitry A. Kazakov
2010-08-20  9:55                                     ` J-P. Rosen
2010-08-20 10:24                                       ` Dmitry A. Kazakov
2010-08-20 11:36                                         ` J-P. Rosen
2010-08-20 12:25                                           ` Dmitry A. Kazakov
2010-08-20 13:28                                             ` J-P. Rosen
2010-08-20 14:05                                               ` Dmitry A. Kazakov
2010-08-20 16:23                                                 ` J-P. Rosen
2010-08-20 16:41                                                   ` Dmitry A. Kazakov
2010-08-20 15:34                                 ` (see below)
2010-08-20 16:42                                   ` Dmitry A. Kazakov
2010-08-22  8:11                                     ` Categories for SPARK on Rosetta Code Jacob Sparre Andersen
2010-08-22  8:53                                       ` Dmitry A. Kazakov
2010-08-20  8:37                           ` SPARK : third example for Roesetta - reviewers welcome Phil Thornley
2010-08-17  8:16                 ` How to structure examples for Rosetta Code (Was: SPARK : third example for Roesetta - reviewers welcome) Jacob Sparre Andersen
2010-08-17 19:16                   ` How to structure examples for Rosetta Code Simon Wright
2010-08-17 20:53                     ` Peter C. Chapin
2010-08-17 21:24                       ` Simon Wright
2010-08-17  2:07           ` SPARK : third example for Roesetta - reviewers welcome Stephen Leake
2010-08-16  4:41     ` Phil Thornley
2010-08-16 17:03       ` Yannick Duchêne (Hibou57)
2010-08-15 20:04 ` Jacob Sparre Andersen
2010-08-15 20:19   ` Yannick Duchêne (Hibou57)
2010-08-15 21:40     ` Jeffrey Carter
2010-08-15 22:13       ` Yannick Duchêne (Hibou57)
2010-08-16  4:29       ` Phil Thornley
2010-08-16 17:11     ` Phil Thornley
2010-08-20  9:06   ` Phil Thornley
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox