Re: Ada vs Ruby
- From: Rick DeNatale <rick.denatale@xxxxxxxxx>
- Date: Thu, 17 Apr 2008 06:10:39 -0500
On Wed, Apr 16, 2008 at 12:57 PM, Phillip Gawlowski
<cmdjackryan@xxxxxxxxxxxxxx> wrote:
Eleanor McHugh wrote:
| It's a lovely idea, but ponder the impact of Gödel's Incompleteness
| Theorems or Turing's proof of the Halting Problem. In practice there are
| program states which can occur which cannot be identified in advance
| because they are dependent on interactions with the environment, or are
| artefacts of the underlying problem space.
|
| That's why run-time error handling and fail-safe behaviour are so
| important regardless of the rigour of Q&A processes.
Sure. But to know these states, the software should be tested as
thoroughly as possible. I somehow doubt that anybody using something
mission-critical to flying or medical health wants to call the hotline
during the final approach of a plane or when a surgical robot gets
fantasies of being SkyNET. ;)
Yes, testing, not a blind faith in whatever language is being used,
and it's compiler.
Anyway, this problem is (AFAIK, anyway), countered by using redundant
implementations of the hardware and software (well, as far as possible,
anyway), to minimize the effect of unknown states.
Of course this isn't perfect either. In fact "The Bug Heard Round the
World." which I mentioned earlier in this thread, was a failure of
redundancy.
The Shuttle has, or at least did in the early days, redundant on-board
computers which monitor the health and behavior of shuttle systems,
with voting used to find discrepencies. The hardware is/was comprised
of (3 I think) identical IBM 4Pi computers with 1 of those having a
totally independently implemented software load. When control of the
launch/mission is transferred to this system, the separate processors
run in parallel, and their outputs are compared. If they disagree,
the launch is aborted.
Of course all of this worked well during the pre-STS1 mission sims.
However, on the day of the launch, there was a clock skew between the
redundant computers, so the output from one lagged just a bit behind
the others, and the system halted the launch, unnecessarily as it
turned out, at T-3
--
Rick DeNatale
My blog on Ruby
http://talklikeaduck.denhaven2.com/
.
- Follow-Ups:
- Re: Ada vs Ruby
- From: Phillip Gawlowski
- Re: Ada vs Ruby
- References:
- Ada vs Ruby
- From: Marc Heiler
- Re: Ada vs Ruby
- From: Michael Neumann
- Re: Ada vs Ruby
- From: Eleanor McHugh
- Re: Ada vs Ruby
- From: Rick DeNatale
- Re: Ada vs Ruby
- From: Phillip Gawlowski
- Re: Ada vs Ruby
- From: Eleanor McHugh
- Re: Ada vs Ruby
- From: Phillip Gawlowski
- Re: Ada vs Ruby
- From: Eleanor McHugh
- Re: Ada vs Ruby
- From: Phillip Gawlowski
- Ada vs Ruby
- Prev by Date: Re: checking connection to server:port
- Next by Date: Re: How to "break" a "case-when" ?
- Previous by thread: Re: Ada vs Ruby
- Next by thread: Re: Ada vs Ruby
- Index(es):
Relevant Pages
|