comp.lang.ada
 help / color / mirror / Atom feed
From: Norman Worth <nworth@comcastNOSPAM.net>
Subject: Re: Handling transactions?
Date: Mon, 27 Jul 2015 20:41:19 -0600
Date: 2015-07-27T20:41:19-06:00	[thread overview]
Message-ID: <daudnTDAMs5TdivInZ2dnUVZ5qGdnZ2d@giganews.com> (raw)
In-Reply-To: <9976ca19-a558-4f4e-80d3-a9b37ee07326@googlegroups.com>

On 7/27/2015 10:38 AM, David Botton wrote:
>> One approach to high-integrity systems requires you to prove, using for
>> example SPARK, that there can be no exceptions; then the problem doesn't
>> arise.
>
> SPARK isn't Ada nor is it an approach the makes sense for most programming tasks. He could also just write those sections in other proof base languages. I wonder if SPARK is even the best choice today for that purpose.
>
> EGarrulo, your question is not a language question but a design question. What you want can be done in any language and depending on what you are trying to "roll back" I can think of many many ways to do it. Be specific and I'm sure some of us can offer advice for your project.
>
> David Botton
>
Proving that an exception is impossible is nice when you can do it. 
(And you can do it outside of SPARK.)  Unfortunately, that is not always 
the situation.  Problems caused by data coming from an I/O stream are 
common examples of why transactions fail.  Using preconditions to check 
the data used to call a transaction procedure can simplify matters, but 
rolling back just what needs to be rolled back can still be messy. 
However, the general method shown for databases should work for just 
about everything.

  parent reply	other threads:[~2015-07-28  2:41 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-27 12:21 Handling transactions? EGarrulo
2015-07-27 14:16 ` Björn Lundin
2015-07-27 14:38   ` EGarrulo
2015-07-27 14:53     ` Simon Wright
2015-07-27 16:38       ` David Botton
2015-07-27 18:15         ` EGarrulo
2015-07-28  0:10           ` Randy Brukardt
2015-07-28  5:33             ` J-P. Rosen
2015-07-28  6:45             ` Dmitry A. Kazakov
2015-07-28 20:23               ` Randy Brukardt
2015-07-28  2:41         ` Norman Worth [this message]
2015-07-29  6:51 ` Jacob Sparre Andersen
replies disabled

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