[
Lists Home |
Date Index |
Thread Index
]
On Tue, 2005-01-04 at 17:57 -0700, Uche Ogbuji wrote:
> On Tue, 2005-01-04 at 16:27 -0800, Daniela Florescu wrote:
> > I don't
> > >think I can recall having *ever* had a program fail because someone
> > >passed a float to a routine that expected an int.
> >
> > Really !?
> >
> > For an impressive example, just take a look at this:
> >
> > http://www.ima.umn.edu/~arnold/disasters/ariane.html
> >
> > $7 billion dollars lost in an explosion after only a couple of seconds
> > in flight. More then 10 years of work for tens of thousands of people.
> > Fortunately no human loses.
> >
> > My lab at that time (INRIA) was tasked to read the millions of lines of code.
> > There were many problems found, but the cause of the explosion
> > was an unfortunate type conversion implicit in a function call if I recall
> > correctly.
>
> No. This is an urban legend ("cubicle legend"?), which I've had trotted
> out before in this argument. I think it's a nice illustration about why
> people with a strong typing mindset have a compulsion to try to express
> all problems they see in terms of strong types.
>
> The problem was a *units* conversion error, not a type conversion error.
> No strongly statically typed language that I know of would have
> prevented it.
Hmm. Actually the link you provided does corroborate your claim that it
was a type error. I could have sworn that the last time that crash came
up in such debate, that I looked up and found that it was a units
conversion error instead. I don't have the time to repeat such a
search, so I'll accept this as a valid counter-example. I still stand
by my own statement that I've never suffered such software failure, and
I find it extraordinary that someone did in this case.
For one thing, does it really seem reasonable that a problem with data
conversion would cause an exception that would cause the "the complete
loss of guidance and attitude information"? Not to me, it doesn't.
Especially considering that such an expensive system, designed
competently, would have had significant levels of fail-over. I assume
there was something very ugly going on in that software system far
beyond individual type (or even value) errors.
--
Uche Ogbuji Fourthought, Inc.
http://uche.ogbuji.net http://4Suite.org http://fourthought.com
Use CSS to display XML - http://www.ibm.com/developerworks/edu/x-dw-x-xmlcss-i.html
Full XML Indexes with Gnosis - http://www.xml.com/pub/a/2004/12/08/py-xml.html
Be humble, not imperial (in design) - http://www.adtmag.com/article.asp?id=10286
UBL 1.0 - http://www-106.ibm.com/developerworks/xml/library/x-think28.html
Use Universal Feed Parser to tame RSS - http://www.ibm.com/developerworks/xml/library/x-tipufp.html
Default and error handling in XSLT lookup tables - http://www.ibm.com/developerworks/xml/library/x-tiplook.html
A survey of XML standards - http://www-106.ibm.com/developerworks/xml/library/x-stand4/
The State of Python-XML in 2004 - http://www.xml.com/pub/a/2004/10/13/py-xml.html
|