Kaz Kylheku said:
It depends who you listen to.
"However, the C standard does guarantee the collating sequence for
the character literals '0' through '9'." - Kaz Kylheku, 27
September 1996
Ah, 1996. That was still in pedantic bootcamp.
Clearly wrong.
"Languages that, unlike C, do not guarantee any particular order of
storage of members of structures, permit compilers to generate an
optimal, or nearly so, packing for a given type." - Kaz Kylheku, 31
May 2000
Blatantly wrong. Should be ``do not require''.
"What is guaranteed is that, since stdout is line buffered by
default, the contents of the output buffer will be flushed to the
environment each time a newline character is printed." - Kaz
Kylheku, 24 July 2000
Should be ``What is required''.
Who wrote this crap? Must have been that Kaz that Chucky remembers
``so fondly''.
"It's stated in the standard, so a conforming C implementation must
ensure that '0' through '9' are consecutive positive integers. But
that doesn't amount to a guarantee.
A guarantee would have to be
some kind of binding document from a compiler vendor promising that
it is true, and stipulating some kind of remedy if it is found to
be false, like your money back or whatever." - Kaz Kylheku, 10 June
2001
That's interesting, isn't it! It's exactly the same subject matter in 1996, the
question of the characters '0' through '9', but a completely different
presentation.
You see, maybe we had a pedantic, but convincing little discussion about the
use of ``guarantee'' in the intervening time.
Today it is 2009, so we can't slip back to the mistakes from before 2001.
Can you catch me after 2001 in c.l.c?
Ah there is one case in 2002 where I wrote about something not being
guaranteed; it's true of course, so you cannot say that I am wrong, but it
didn't occur to me that it's /vacuously/ true and thus a useless non-fact. I.e.
it fails to be the pertinent statement that I should have made, namely that
that the behavior is not /required/. Well, vacuously right is not wrong.
I will take whatever ``not wrong'' I can get.
How about other newsgroups? One more minor slipup in comp.lang.lisp in 2002,
when discussing an interface contract between some module that provides macros,
and code that uses it, and the possibility of some guarantees related to
referential hygiene. (I could make some backpedaling arguments here about how
this is not about a standard document, but implementations of code, but I
won't).
In 2008 I used "guarantee" in that newsgroup, but in strictly mathematical
sense; i.e. related to a pure mathematical guarantee. If you walk around a
congruence based on a prime modulus in some fixed increments, you are
guaranteed (mathematically) to cover all elements of that congruence.
Based on this (admittedly small) sample, three out of four Kazes
think that C provides guarantees.
If we grant that my misuse can excuse yours at all, my /historic/ misuse
certainly cannot excuse your /current/ misuse, only your own /historic/ misuse.
``I owned slaves? Well, so did you.'' -- valid
``I own slaves? Well, so did you.'' -- invalid
Otherwise you could use this argument schema to excuse yourself for being wrong
about /anything whatsoever/ that anyone else in the debate could be shown not
to have known once upon a time. And once upon a time, we all knew nothing.
How about no excuses? I was pitifully wrong about some things that I'm not
wrong out anymore, but I'm horribly wrong about some other things (that others
are not wrong about), etc.
Once upon a time people could come to this newsgroup for a friendly exchange of
calling each other's nonsense. One lurked in the shadows, one hand on the
handle of his katana, waiting to leap out and strike down Dan Pop or Lawrence
Kirby upon the slightest sign (or should we say odor) of bullschildt.
It was just a sport.