comp.lang.ada
 help / color / mirror / Atom feed
From: "Peter C. Chapin" <chapinp@acm.org>
Subject: Re: SPARK : third example for Roesetta - reviewers welcome
Date: Mon, 16 Aug 2010 19:43:57 -0400
Date: 2010-08-16T19:43:57-04:00	[thread overview]
Message-ID: <4c69cd5f$0$2375$4d3efbfe@news.sover.net> (raw)
In-Reply-To: <op.vhjyi5kkxmjfy8@garhos>

On 2010-08-16 18:38, Yannick Duchï¿œne (Hibou57) wrote:

> That's not only about users of Rosetta which would be supposed not
> clever enough to understand it, that's about usability any one else (at
> least some ones else). You cannot make the assumption that if someone
> feel this is somewhat scattered, then this one is just not versed enough
> to understand how good it is.

I didn't mean to imply that Rosetta users (or Python users) are
unintelligent. If my comment came across that way, I apologize. My point
was that a person who places a high value in conciseness in programming
language design (such as many advocates of dynamic languages) is
probably not going to be very impressed with SPARK no matter what you
do. Adding an extra rules file (or not) isn't going to matter to such a
person.

> 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?

In principle the issue comes up with other languages too. C is not much
use without a C compiler (a tool). It is true that you can write a C
program in isolation. However, the legality of the program is enforced
by a tool. If a SPARK compiler existed as a single program that took
SPARK source to object code, it would combine the functionality of, at
least, the Examiner and a partial Ada compiler. I suppose it could also
contain the functionality of the simplifier as well. Would that make all
of that functionality part of the SPARK language? If you created an Ada
compiler that split semantic analysis into a separate executable would
that make the semantic checks "just a tool?"

I suppose to really distinguish between language and tool you need to
examine the specification of SPARK. Just as the Ada standard defines the
Ada language the SPARK "standard" would define the SPARK language. Any
additional features would be added by tools.

> 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. Will it
become the Java of the formal methods community?

Peter



  reply	other threads:[~2010-08-16 23:43 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 [this message]
2010-08-17  9:15                   ` Phil Thornley
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