Newsgroups: comp.lang.c
Path: utzoo!henry
From: henry@utzoo.uucp (Henry Spencer)
Subject: Re: ambiguous ?
Message-ID: <1989Oct19.022327.6730@utzoo.uucp>
Organization: U of Toronto Zoology
References: <1989Oct17.203733.23121@utzoo.uucp> <14091@lanl.gov>
Date: Thu, 19 Oct 89 02:23:27 GMT

In article <14091@lanl.gov> jlg@lanl.gov (Jim Giles) writes:
>> I could have sworn that a good many things were officially undefined in
>> Fortran (66 or 77, take your pick), such as the values of local variables
>> after return from a function.  I could be wrong...
>
>That's a different definition of _undefined_ and you know it.  The Fortran
>use is a description of the status of those variables.  In C, the _behaviour_
>of the program is what's undefined...

On machines where some values will cause traps when used, I think the
difference is real hair-splitting.  My recollection, admittedly a bit
dim, is that in ANSI Fortran it is flatly illegal to reference a
variable with an undefined value.  I don't see the big difference.

>... C has _many_
>more contexts which are _both_ undefined and without efficient ways
>of overriding the ambiguity.

Sure there are efficient ways:  avoid depending on the ambiguity.  Oddly
enough, this seldom bothers experienced C programmers.  Nobody ever claimed
C was suitable for beginners.

>... I know several people who
>don't use C simply because its behaviour is deliberately undefined and
>there is no clear way of explicitly overriding such ambiguities.

Rational arguments are useless against superstition.
-- 
A bit of tolerance is worth a  |     Henry Spencer at U of Toronto Zoology
megabyte of flaming.           | uunet!attcan!utzoo!henry henry@zoo.toronto.edu
