comp.lang.ada
 help / color / mirror / Atom feed
From: Tim Rowe <spamtrap@tgrowe.plus.net>
Subject: Re: Newbie question: SPARK verification condition on member of private record
Date: Fri, 03 Apr 2009 00:58:10 +0100
Date: 2009-04-03T00:58:10+01:00	[thread overview]
Message-ID: <y7ednbO7TLaJzEjUnZ2dnUVZ8sSdnZ2d@posted.plusnet> (raw)
In-Reply-To: <XQOei4CZgN1JJw9Y@diphi.demon.co.uk>

JP Thornley wrote:

> The usual recommendation for updating records is to assign an aggregate 
> rather than individual components (this gets rid of all the 
> upf_/update's), but the need to update an element of the array makes it 
> more awkward in this case.

Yes, an aggregate assignment followed by the update of the array makes 
for a much worse set of things to prove.

> That's a lot easier than the usual way (banging head against desk until 
> you eventually realise that it's not a problem with the tools).

But less entertaining for bystanders.

In fact, in this case I wouldn't have noticed anything wrong. When 
specifying that all original members of the array would be unchanged, I 
accidentally appended a tilde to "This" on /both/ sides of the identity, 
so it was trivially true. It would probably have vanished in the 
simplifier, and I wouldn't have known anything was wrong. Thank goodness 
for peer review and testing in the Real World! (And the low likelihood 
of a typing error in the annotation aligning with a corresponding error 
in code).



  parent reply	other threads:[~2009-04-02 23:58 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-04-01 19:38 Newbie question: SPARK verification condition on member of private record Tim Rowe
2009-04-01 21:04 ` JP Thornley
2009-04-01 23:50   ` Tim Rowe
2009-04-02  9:00     ` JP Thornley
2009-04-02 12:00       ` Tim Rowe
2009-04-02 15:22         ` JP Thornley
2009-04-02 18:09           ` roderick.chapman
2009-04-03 11:26             ` Tim Rowe
2009-04-02 23:58           ` Tim Rowe [this message]
2009-04-03 13:36             ` JP Thornley
2009-04-06 11:49               ` Tim Rowe
replies disabled

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