Is C99 C?

S

spinoza1111

Because of my disgust with Richard Heathfield's behavior, I am getting
back up to speed on C having abandoned it years ago because it is
obsolete and unsafe in all versions. I am doing so for forensic
reasons because I believe Richard to be guilty of civil and criminal
libel. I have this question for the group.

If (as some clown editing wikipedia claims) C99 is a "dialect" of C,
what is Heathfield doing here? He's an authority on C99 and if it is a
dialect then he should create a separate newsgroup for C99. When most
programmers think "C" they think K & R 1 (the book Garth is seen
carrying at the end of Wayne's World II) or 2.

The word dialect in computing science means that neither language is a
subset of the other: instead, they overlap.

Furthermore, it appears to me that C99, like Cobol, was a language
designed by a committee. The treatment of Schildt by some of the
members implies that some individuals on this committee were
vindictive and twisted people.

I smell a rat.
 
T

Tom St Denis

Ok I'll bite ...

Because of my disgust with NAME CUT behavior, I am getting
back up to speed on C having abandoned it years ago because it is
obsolete and unsafe in all versions. I am doing so for forensic
reasons because I believe NAME CUT to be guilty of civil and criminal
libel. I have this question for the group.

Keep your inflammatory rhetoric to yourself. I don't care what you
think of C or other posters here. And I suspect nobody else does
either.
If (as some clown editing wikipedia claims) C99 is a "dialect" of C,
what is Heathfield doing here? He's an authority on C99 and if it is a
dialect then he should create a separate newsgroup for C99. When most
programmers think "C" they think K & R 1 (the book Garth is seen
carrying at the end of Wayne's World II) or 2.

"C" doesn't refer to a single language. There is considerable overlap
between C90 and C99 and both are referred to as C, but that's about
it. Both are valid instantiations of what you'd call C. So the fact
they're not exactly the same is not troubling or hard to resolve.

Look at UK English vs. Canadian English vs. American English. Brits
say "boot", and we say trunk, americans spell it "color" and we
"colour", they both call them hats, we call them toques ...

Are you telling me UK English is not "English" because it differs from
Canadian English?

Generally if you aim for C90 with some features from C99 you'll be
ok. Like avoid body declaration of variants e.g.

for (int c = 0; ...)

Or variable sized arrays, and you should be fine. Things like "long
long" are fairly common amongst C90 compilers, etc.

And can you stop with the personal attacks?

Tom
 
S

spinoza1111

Ok I'll bite ...



Keep your inflammatory rhetoric to yourself.  I don't care what you
think of C or other posters here.  And I suspect nobody else does
either.


"C" doesn't refer to a single language.  There is considerable overlap
between C90 and C99 and both are referred to as C, but that's about
it.  Both are valid instantiations of what you'd call C.  So the fact
they're not exactly the same is not troubling or hard to resolve.

No? Bugs aren't troubling? The unsafety of systems embedded in mission
critical systems troubles you not?
Look at UK English vs. Canadian English vs. American English.  Brits
say "boot", and we say trunk, americans spell it "color" and we
"colour", they both call them hats, we call them toques ...

We're not computers.
Are you telling me UK English is not "English" because it differs from
Canadian English?

No. I'm talking about C.
Generally if you aim for C90 with some features from C99 you'll be
ok.  Like avoid body declaration of variants e.g.

for (int c = 0; ...)

Or variable sized arrays, and you should be fine.  Things like "long
long" are fairly common amongst C90 compilers, etc.

Great advice for legacy code...
And can you stop with the personal attacks?
No. I just returned after a long absence because in case you haven't
noticed, many of the people you might think are making "personal
attacks" are in fact defending themselves against campaigns of
personal destruction initiated by Richard Heathfield. Telling THEM
that THEY are the ones making "personal attacks" is to deny them the
right of using language in personal self-defense, one of the reasons
freedom of speech was made the First Amendment to the United States
Constitution.

I am only too well aware of how corporate types start enabling gossip
and campaigns of deliberate distortion and I see it happen here. I am
too old to take that shit anymore, especially when I see it being
directed by Heathfield against people who've done more than he has,
like Jacob Navia.

I don't make personal attacks out of the blue. Furthermore, unlike
Richard Heathfield, I do not discuss the competence of others based on
scraps of code with third parties for the target-mark to see, because
I'm not a rotten little coward as he is. Unlike a lot of you, however,
I defend myself and I even stand up for others. For example, I got the
wikipedia entries on Herb Schildt and Kathy Sierra changed, removing
negative information that had been created by bullies.

C90 is a new language based on an infantile disorder and a
vandalization of Algol. Computer languages are not human languages,
and no amount of ugly patching by committee, nor any number of
campaigns of personal destruction, will make this true.
 
U

user923005

Fully agreed.  +1

Spinoza is pure troll. Trying to correct a pure troll is an utter
waste of time.

Of course it is irresistable, if the troll is talented enough. For
instance, I have responded to Scott Nudds, Spinoza, and JSH. So I
cannot castigate anyone for responding to spinoza.

Asking spinoza to halt personal attacks is like asking Nudds or JSH to
stop posting personal attacks. Quite frankly, in spinozas case, his
only purpose in posting is that of personal attacks.
 
T

Tom St Denis

No? Bugs aren't troubling? The unsafety of systems embedded in mission
critical systems troubles you not?

I have no idea what you're talking about. It's possible to write bug
free applications in C90 and C99. Debugging tools like strace,
valgrind, and gdb exist for just such purposes.

Do you suppose another language is better in that it prevents bugs
from existing?
We're not computers.

But it proves my point which you clearly didn't catch.
No. I'm talking about C.

And.... C is no more a single language than English or even French.
There are dialects of all three yet they're still under the umbrella
of a single name.

C does not mean C90 or C89 or even C99. There is no standard,
ANYWHERE, which tells you what "C" means.
Great advice for legacy code...

Actually, I write code TODAY that maps onto a C90 with long long
definition. I still don't use C99 extensions.
No. I just returned after a long absence because in case you haven't
noticed, many of the people you might think are making "personal
attacks" are in fact defending themselves against campaigns of
personal destruction initiated by NONAME. Telling THEM
that THEY are the ones making "personal attacks" is to deny them the
right of using language in personal self-defense, one of the reasons
freedom of speech was made the First Amendment to the United States
Constitution.

First off, I, like many in this group, has no vested interest in
defending anyone in this group. I'm no more in league with your
target of aggression as league with anyone else. I'm asking you to
drop the attacks because they're childish and irrelevant. Even if
your quibs with him WERE correct I still don't want to read about them
in clc.

Second, the 1st amendment prevents the Government from hindering your
speech, it speaks nothing to private citizens.

Third, best I can tell he's from the UK, they don't have a 1st
amendment.

<snip rest of rant>

Nobody is holding a gun to your head saying you have to code in C90 or
C99 or any dialect of C. So if you really, really hate C, don't code
in C.

I don't like tofu, doesn't mean I go in alt.vegan and troll them about
tofu all day.

Get a life.
 
K

Keith Thompson

Tom St Denis said:
C does not mean C90 or C89 or even C99. There is no standard,
ANYWHERE, which tells you what "C" means.
[...]

Yes, there is. It's called ISO/IEC 9899:1999. (Cue long and boring
argument about whether ISO has the authority to define what "C" is;
the point is that there most certainly is a standard that tells you
what "C" means.)

(And please stop feeding the troll.)
 
J

jameskuyper

Tom St Denis wrote:
....
C does not mean C90 or C89 or even C99. There is no standard,
ANYWHERE, which tells you what "C" means.

Section 1p1 of the current C standard says:

"This International Standard specifies the form and establishes the
interpretation of
programs written in the C programming language.1) It specifies
— the representation of C programs;
— the syntax and constraints of the C language;
— the semantic rules for interpreting C programs;
— the representation of input data to be processed by C programs;
— the representation of output data produced by C programs;
— the restrictions and limits imposed by a conforming implementation
of C."

I believe that the wording was similar in previous versions.

Now, perhaps that does not tell you what "C" means, at least not
explicitly. But it doesn't leave a lot of room for ambiguity about the
matter, either. Since, for instance, the standard specifies "the
syntax and constraints of the C language", that doesn't leave enough
room to interpret "the C language" as referring to any language with a
different syntax or different constraints.

Historically, there have been two major versions of the standard, and
if I've counted correctly, 5 technical Corrigenda, so "C" has referred
to several different languages over the course of time, and C90
remains the de-facto standard even though C99 is the de-jure standard.
Before the first standard, insofar as C was defined, it was defined by
K&R. So there's a lot of different things that can legitimately, in
the appropriate context, be called "C" that are not the same as the
current standard. However, to claim that there is no standard defining
what "C" means seems to require ignoring section 1p1 entirely.
 
S

spinoza1111

I have no idea what you're talking about.  It's possible to write bug
free applications in C90 and C99.  Debugging tools like strace,
valgrind, and gdb exist for just such purposes.

The tools don't get rid of bugs.
Do you suppose another language is better in that it prevents bugs
from existing?

Most certainly.
But it proves my point which you clearly didn't catch.

I can't catch a stupid point.
And.... C is no more a single language than English or even French.
There are dialects of all three yet they're still under the umbrella
of a single name.

To compare a programming language to a human language insults both.
C does not mean C90 or C89 or even C99.  There is no standard,
ANYWHERE, which tells you what "C" means.


Actually, I write code TODAY that maps onto a C90 with long long
definition.  I still don't use C99 extensions.



First off, I, like many in this group, has no vested interest in
defending anyone in this group.  I'm no more in league with your
target of aggression as league with anyone else.  I'm asking you to
drop the attacks because they're childish and irrelevant.  Even if
your quibs with him WERE correct I still don't want to read about them
in clc.

When he stops I shall cease self-defense.
Second, the 1st amendment prevents the Government from hindering your
speech, it speaks nothing to private citizens.

That's nonsense unless you're talking about speech on private
property, and even there, First Amendment jurisprudence questions free
speech restrictions in shopping malls.
Third, best I can tell he's from the UK, they don't have a 1st
amendment.

That's part of the problem. And he IS covered by UK libel law and EU
law on freedom of speech.
<snip rest of rant>

Nobody is holding a gun to your head saying you have to code in C90 or
C99 or any dialect of C.  So if you really, really hate C, don't code
in C.

I don't like tofu, doesn't mean I go in alt.vegan and troll them about
tofu all day.

Part of the problem is the self-indulgent view, which originated with
Kernighan and Ritchie's dislike of MULTICS, that computing can be a
lifestyle and not a public utility.
 
S

spinoza1111

Tom St Denis said:
ANYWHERE, which tells you what "C" means.

[...]

Yes, there is.  It's called ISO/IEC 9899:1999.  (Cue long and boring
argument about whether ISO has the authority to define what "C" is;
the point is that there most certainly is a standard that tells you
what "C" means.)

(And please stop feeding the troll.)

"And please stop talking to the Jew."
 
T

Tom St Denis

Tom St Denis said:
ANYWHERE, which tells you what "C" means.

[...]

Yes, there is.  It's called ISO/IEC 9899:1999.  (Cue long and boring
argument about whether ISO has the authority to define what "C" is;
the point is that there most certainly is a standard that tells you
what "C" means.)

It's highly imprecise though. Since there are multiple compilers out
in common use which comply to different standards it's not really
meaningful to tell me you code in C. I mean if you wrote a program in
1992 which complied with C90 but not C99, is it no longer a C program?

I think the standard refers to C99 as "C" out a matter of convenience
not to replace "C" everywhere for all time with C99.
(And please stop feeding the troll.)

Hey, I worked all 3 days of a long weekend, indulge me a little if I
want to respond to a misbehaving poster with some sensible
discourse. :)

Tom
 
T

Tom St Denis

Most certainly.

I'd like to hear about it. The language in which all programs are
100% bug free.
I can't catch a stupid point.

Is the insults towards me really necessary? I've shown you no
hostility.
To compare a programming language to a human language insults both.

Why? They're essentially the same thing. Both have symbols,
grammars, rules, syntax, etc...
When he stops I shall cease self-defense.

Last I checked he's not starting threads in which he proclaims any
negative about you. The persecution is all in your head.
That's nonsense unless you're talking about speech on private
property, and even there, First Amendment jurisprudence questions free
speech restrictions in shopping malls.

Actually, no. I can ask/tell you to "shut up" in public, in my house,
heck even in your own house [provided I'm not trespassing at the
time]. 1st amendment is solely to prevent the government from
hindering speech [etc.]. It has nothing to do with private matters.
That's part of the problem. And he IS covered by UK libel law and EU
law on freedom of speech.

UK citizens don't really have "rights" as Americans define them, and
they're certainly not covered by the 1st amendment. I'm sure the EU
has free speech laws, but they're not called "the 1st amendment." And
even then I suspect they're similarly worded anyways in that private
citizens don't need to publish, entertain, accept, or tolerate speech
from anyone.
Part of the problem is the self-indulgent view, which originated with
Kernighan and Ritchie's dislike of MULTICS, that computing can be a
lifestyle and not a public utility.

I have no idea why that's relevant to clc. Nor do I care about the
personal politics of K&R. I use C because it's useful, not because
I'm best friends with the developers of the language. Stop making it
personal.

Your target of your aggression is not the authority on what's C and
what isn't. It's not like we all run our C code by him first to get
blessing. So if you really dislike C, first off, stop using it,
second, take it up in a more appropriate group, clc is not to discuss
the merits of the C language but the contents of the language
itself.

Tom
 
N

Nick Keighley

[...] C is no more a single language than English or even French.
There are dialects of all three yet they're still under the umbrella
of a single name.
To compare a programming language to a human language insults both.

Why?  They're essentially the same thing.  Both have symbols,
grammars, rules, syntax, etc...

"The use of the Chomsky formalism is also responsible for the term
"programming language", because programming languages seemed to
exhibit a strucure similar to spoken languages. We believe that
this term is rather unfortunate on the whole, because a programming
language is not spoken, and therefore is not a language in the true
sense of the word. Formalism or formal notation would have been
more appropriate terms."
Niklaus Wirth


I consider the comparison of machine languages with natural languages
to be a metaphor. And a fruitful one at that. Just as natural
languages
have dialects so do machine languages.

What is Fortran? Is it Fortran 4 or Fortran 77 or Fortran-De-Jeux?


nothing to amend
UK citizens don't really have "rights" as Americans define them,
http://en.wikipedia.org/wiki/Human_Rights_Act_1998

and they're certainly not covered by the 1st amendment.  
http://en.wikipedia.org/wiki/European_Convention_on_Human_Rights#Article_10_-_expression

I'm sure the EU
has free speech laws, but they're not called "the 1st amendment."  And
even then I suspect they're similarly worded anyways in that private
citizens don't need to publish, entertain, accept, or tolerate speech
from anyone.

<SNIP>
 
J

James Kuyper

Nick said:

That's an Act of Parliament; presumably it could be repealed by another
Act of Parliament. How difficult is that to achieve? How does it compare
with the difficulty of repealing an amendment to the US constitution? If
Acts of Parliament can be repealed as easily as laws passed by the US
Congress, then the rights it provides aren't as strong as those
guaranteed by the 1st Amendment to the US constitution.

As you've indicated, they're covered by Article 10, not the 1st
amendment, which is precisely his point.

While they do provide some protection for free speech, it appears that
both the Human Rights Act and Article 10 have a lot more weasel wording
than is present in the 1st Amendment. I wouldn't find it difficult to
write a law completely suppressing all meaningful freedom of speech
without even coming close to violating Article 10, just by taking
advantage of the weasel wording. "national security, territorial
integrity or public safety, for the prevention of disorder" is
sufficient justification for suppression of all internal political
opposition. "protection of reputation" is sufficient to justify
suppression of all criticism of a ruling elite, "protection of health or
morals" is sufficient to justify suppression of criticism of a state
religion.

I'm not claiming that the 1st amendment cannot be or has not been
ignored for similar reasons; but the violations have to be more blatant,
and therefore easier to fight, because it doesn't allow for as many
exceptions.
 
N

Nick Keighley

Nick Keighley said:

It is hard to tell whether you intended to write "Fortran du jour"
(i.e. "the currently fashionable version of Fortran"), or whether you
actually meant what you wrote - "Fortran of games". :)

Fortran of Games sounds pretty cool. With all the heavy maths
that modern games need there must be a demand!
 
T

Tom St Denis

Fortran of Games sounds pretty cool. With all the heavy maths
that modern games need there must be a demand!

Sounds like yet another bond title ... (quantum of solace...) Fortran
of Evil!

But you raise a good point just the same is Fortran F77 or F95?

Is Basic gw-basic, vic-basic, q-basic, visual basic?

Tom
 
S

spinoza1111

[...] C is no more a single language than English or even French.
There are dialects of all three yet they're still under the umbrella
of a single name.
To compare a programming language to a human language insults both.
Why?  They're essentially the same thing.  Both have symbols,
grammars, rules, syntax, etc...

"The use of the Chomsky formalism is also responsible for the term
 "programming language", because programming languages seemed to
 exhibit a strucure similar to spoken languages. We believe that
 this term is rather unfortunate on the whole, because a programming
 language is not spoken, and therefore is not a language in the true
 sense of the word. Formalism or formal notation would have been
 more appropriate terms."
                    Niklaus Wirth

....and once you demand, in place of a "language", a "formalism", C
looks Coyote Ugly as a formalism.
I consider the comparison of machine languages with natural languages
to be a metaphor. And a fruitful one at that. Just as natural
languages
have dialects so do machine languages.

What is Fortran? Is it Fortran 4 or Fortran 77 or Fortran-De-Jeux?

Certain language families hold their shape better. C does not. It is
not as much of a Fat Bastard as Fortran but it has tendencies in that
direction: changes (C90, C99) had to be made because of serious design
mistakes in K&R, mistakes now fetishized by cargo cult programmers.
But the Gods Must Have Been Crazy when they made some of C's
mistakes...such as its overgeneral for statement and its jejune
failure to decide whether to grow up in the first place (it is halfway
between machine and high level languages, managing to share the
defects of both).
nothing to amend

The UK has no written Constitution but a strong Constitutional
tradition all the same. Its documents being the piece of paper King
John signed so mulishly at Runnymede, the Declaration of Right of 1688
(mostly a whack against the Papists), the Reform bill of 1830, and
Bagehot's essay. Supreme authority is mystified as the King [or now
the Queen]-in-Parliament: when Parliament speaks, its voice, like King
Henry's voice in Shakespeare's play, "is imperial" but only because
Parliament has magically taken the Monarch's divine right from Kingie
or Queenie as the case may be and speaks with his or her voice like an
actor playing a part.

The whole arrangement, while having a certain grandeur, is also
complete nonsense and what Scots writer Tom Nairn has called "The
Enchanted Glass" in a book of that name, and has attracted a fearsome
horde of people who obsess over long dead claims of legitimacy. Nairn
had a flat-mate who insisted, for example, on referring to QEII as
"the Electress iv Hanoover" since he too was a Scot, and a Stuart
supporter: for even as the Triad here in Hong Kong swears allegiance
to the restoration of the sway of the Ming Dynasty, an Enchanted Glass
invites dreamers.
 
S

spinoza1111

Tom St Denis said:
ANYWHERE, which tells you what "C" means.

Yes, there is.  It's called ISO/IEC 9899:1999.  (Cue long and boring
argument about whether ISO has the authority to define what "C" is;
the point is that there most certainly is a standard that tells you
what "C" means.)

It's highly imprecise though.  Since there are multiple compilers out
in common use which comply to different standards it's not really
meaningful to tell me you code in C.  I mean if you wrote a program in
1992 which complied with C90 but not C99, is it no longer a C program?

I think the standard refers to C99 as "C" out a matter of convenience
not to replace "C" everywhere for all time with C99.
(And please stop feeding the troll.)

Hey, I worked all 3 days of a long weekend, indulge me a little if I
want to respond to a misbehaving poster with some sensible
discourse.  :)

Misbehaving? What is this, kindergarten?

Such childish language creates a race to be the Parent, and this
CREATES endless flame wars and bullying.

I wuv it when fat and hairy Jerry Garcia clones without his talent,
having thrown away the rulebook because they are "anarchists", start
to talk like Uncle John, treating dissidents like children precisely
because they cannot themselves live under a clear set of rules,
defining "misbehaving" as any thought which isn't utterly status quo!
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,994
Messages
2,570,223
Members
46,813
Latest member
lawrwtwinkle111

Latest Threads

Top