From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Intervention needed?
Date: Mon, 1 Apr 2019 18:51:14 +0200
Date: 2019-04-01T18:51:14+02:00 [thread overview]
Message-ID: <q7tfi3$1483$1@gioia.aioe.org> (raw)
In-Reply-To: a29feba5-ea18-4661-82fc-a88b99dbd5ab@googlegroups.com
On 2019-04-01 17:13, Optikos wrote:
> One clarifying question that I have is: how would you “prove no Constraint_Error propagating”? At run-time or at compile-time or at engineering-time using tools other than the compiler?
It must be the compiler. The programmer states contracts of the
subprograms and if the contracts cannot be proven to hold that is a
compile-time error.
The problem is, of course, specifying the mandatory strength of a proof
AKA false negatives vs. false positives. If a fact cannot be proven true
by one compiler that makes the program illegal even if another compiler
could prove it.
E.g. in the current Ada the program
function Foo return Integer is
begin
raise Data_Error;
end Foo;
is illegal, though every compiler can prove its equivalence to the legal
one:
function Foo return Integer is
begin
raise Data_Error;
return 0;
end Foo;
One way out could be user provided axioms which the compiler is allowed
to use when it fails to find a proof (with a warning of course):
function Foo return Integer is
begin
raise Data_Error;
## I swear there is a return statement
end Foo;
> If at compile-time or at engineering-time using tools other than the compiler, then that is the solution that ATS2 and ATS3 are pursuing, where ATS's type views are rough analogues of what you are calling exception contracts here.
Exception contracts are not related to types. But otherwise, yes, SPARK
must be integrated into Ada.
--
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de
next prev parent reply other threads:[~2019-04-01 16:51 UTC|newest]
Thread overview: 146+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-03-08 16:43 Intervention needed? Olivier Henley
2019-03-08 16:58 ` Dmitry A. Kazakov
2019-03-08 17:31 ` gautier_niouzes
2019-03-11 14:31 ` antispam
2019-03-11 15:07 ` gautier_niouzes
2019-03-11 17:19 ` Dmitry A. Kazakov
2019-03-11 15:34 ` Lucretia
2019-03-11 17:30 ` Simon Wright
2019-03-11 17:42 ` Dmitry A. Kazakov
2019-03-11 18:14 ` AdaMagica
2019-03-11 19:52 ` Olivier Henley
2019-03-11 20:04 ` Lucretia
2019-03-11 22:08 ` Jeffrey R. Carter
2019-03-12 2:04 ` Lucretia
2019-03-12 13:17 ` Olivier Henley
2019-03-12 16:32 ` Jeffrey R. Carter
2019-03-12 16:56 ` Lucretia
2019-03-12 17:20 ` Lucretia
2019-03-12 18:14 ` Olivier Henley
2019-03-12 19:21 ` Lucretia
2019-03-12 21:53 ` Randy Brukardt
2019-03-13 10:50 ` Jere
2019-03-17 12:52 ` Optikos
2019-03-17 16:37 ` Luke A. Guest
2019-03-17 16:48 ` Paul Rubin
2019-03-20 0:49 ` Optikos
2019-03-20 1:04 ` Paul Rubin
2019-03-20 1:19 ` Optikos
2019-03-18 23:36 ` Randy Brukardt
2019-03-19 2:18 ` Optikos
2019-03-19 8:44 ` Dmitry A. Kazakov
2019-03-19 9:53 ` Optikos
2019-03-19 22:13 ` Randy Brukardt
2019-03-19 22:26 ` Paul Rubin
2019-03-20 1:08 ` Jere
2019-03-22 2:26 ` Randy Brukardt
2019-03-23 15:56 ` Jeffrey R. Carter
2019-03-23 21:38 ` Paul Rubin
2019-03-19 22:36 ` Optikos
2019-03-19 23:13 ` Randy Brukardt
2019-03-20 1:28 ` Jere
2019-03-20 8:42 ` Dmitry A. Kazakov
2019-03-22 2:00 ` Randy Brukardt
2019-03-22 11:10 ` Jere
2019-03-23 8:03 ` Randy Brukardt
2019-03-23 21:32 ` Jere
2019-03-20 7:59 ` Optikos
2019-03-22 2:16 ` Randy Brukardt
2019-03-22 8:38 ` Optikos
2019-03-22 10:54 ` Jere
2019-03-23 7:53 ` Randy Brukardt
2019-03-23 13:59 ` Jere
2019-03-23 21:19 ` Jere
2019-03-23 21:29 ` Paul Rubin
2019-03-26 8:09 ` Optikos
2019-03-20 1:20 ` Jere
2019-03-22 2:30 ` Randy Brukardt
2019-03-22 9:08 ` Dmitry A. Kazakov
2019-03-22 22:23 ` Optikos
2019-03-27 19:20 ` G. B.
2019-03-27 21:02 ` Paul Rubin
2019-03-28 7:01 ` Maciej Sobczak
2019-03-28 7:17 ` Paul Rubin
2019-03-28 8:39 ` Simon Wright
2019-03-30 4:31 ` Paul Rubin
2019-03-30 22:14 ` Robert A Duff
2019-03-30 22:55 ` Paul Rubin
2019-03-28 9:06 ` Dmitry A. Kazakov
2019-03-28 20:48 ` G. B.
2019-03-29 5:13 ` Bojan Bozovic
2019-03-29 8:13 ` Dmitry A. Kazakov
2019-03-29 6:57 ` Maciej Sobczak
2019-03-29 7:13 ` Paul Rubin
2019-03-29 8:39 ` Dmitry A. Kazakov
2019-04-01 15:13 ` Optikos
2019-04-01 16:51 ` Dmitry A. Kazakov [this message]
2019-04-01 21:42 ` Randy Brukardt
2019-04-02 8:30 ` Dmitry A. Kazakov
2019-04-02 15:53 ` Anh Vo
2019-03-19 22:04 ` Randy Brukardt
2019-03-19 22:22 ` Paul Rubin
2019-03-19 23:01 ` Randy Brukardt
2019-03-19 9:37 ` Optikos
2019-03-19 22:21 ` Randy Brukardt
2019-03-29 17:56 ` Florian Weimer
2019-03-29 22:17 ` Randy Brukardt
2019-03-29 22:35 ` Florian Weimer
2019-04-01 21:17 ` Randy Brukardt
2019-03-29 17:41 ` Florian Weimer
2019-03-29 22:16 ` Randy Brukardt
2019-03-29 22:43 ` Florian Weimer
2019-04-01 21:29 ` Randy Brukardt
2019-04-01 22:14 ` Simon Wright
2019-04-02 21:55 ` Randy Brukardt
2019-04-04 15:07 ` Simon Wright
2019-03-12 21:41 ` Randy Brukardt
2019-03-13 9:10 ` Maciej Sobczak
2019-03-13 11:08 ` Jere
2019-03-13 11:11 ` Jere
2019-03-13 11:59 ` Jere
2019-03-13 13:44 ` Olivier Henley
2019-03-13 15:56 ` Simon Wright
2019-03-13 16:25 ` Olivier Henley
2019-03-14 0:40 ` Simon Wright
2019-03-13 16:27 ` Olivier Henley
2019-03-14 22:41 ` Randy Brukardt
2019-03-16 21:30 ` Olivier Henley
2019-03-29 17:38 ` Florian Weimer
2019-03-13 13:23 ` Olivier Henley
2019-03-22 11:10 ` Lucretia
2019-03-22 14:09 ` J-P. Rosen
2019-03-22 16:41 ` Jeffrey R. Carter
2019-03-22 17:29 ` Paul Rubin
2019-03-22 22:36 ` Optikos
2019-04-01 7:28 ` gautier_niouzes
-- strict thread matches above, loose matches on Subject: below --
2019-03-25 19:14 Randy Brukardt
2019-03-25 20:44 ` Dmitry A. Kazakov
2019-03-28 0:48 ` Jere
2019-04-02 22:07 Randy Brukardt
2019-04-03 7:29 ` Dmitry A. Kazakov
2019-04-03 14:31 ` Optikos
2019-04-03 14:54 ` Dmitry A. Kazakov
2019-04-03 15:29 ` Optikos
2019-04-03 16:16 ` Simon Wright
2019-04-03 17:15 ` Dmitry A. Kazakov
2019-04-03 21:12 ` Simon Wright
2019-04-04 7:09 ` Dmitry A. Kazakov
2019-04-04 5:44 ` Maciej Sobczak
2019-04-04 7:17 ` Dmitry A. Kazakov
2019-04-04 7:22 ` Paul Rubin
2019-04-04 8:37 ` Niklas Holsti
2019-04-05 0:13 ` Randy Brukardt
2019-04-05 5:45 ` Maciej Sobczak
2019-04-05 15:17 ` Optikos
2019-04-06 1:38 ` Jere
2019-04-06 4:25 ` alby.gamper
2019-04-06 6:49 ` Jere
2019-04-06 8:24 ` alby.gamper
2019-04-04 12:28 ` Simon Wright
2019-04-04 16:17 ` Optikos
2019-04-03 15:07 ` Lucretia
2019-04-03 16:15 ` Simon Wright
2019-04-03 17:23 ` Niklas Holsti
2019-04-03 17:48 ` Bill Findlay
2019-04-03 21:01 ` Simon Wright
2019-04-03 18:58 ` Dennis Lee Bieber
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox