Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > C Programming > bunch of pedants

Reply
Thread Tools

bunch of pedants

 
 
jacob navia
Guest
Posts: n/a
 
      03-16-2008
The regulars go on denying that C uses a stack. They should
read this:

<begin quote>
Any function in C may be recursive
(without special declaration) and most possess several "automatic"
variables local to each invocation. These characteristics suggest
strongly that a stack must be used to store the automatic variables,
caller's return point, and saved registers local to each function;
in turn, the attractiveness of an implementation will depend heavily
on the ease with which a stack can be maintained.
<end quote>

This was written by an expert in C.

True, there is no mention of a stack in their bible
Fact is, there isn't any C implementations that don't use
a stack to store the automatic variables.

Up to now, this people are unable to put forward a single
example of an implementation that doesn't use a hardware
stack (maintained by a register in a contiguous memory
addressing space)

Their first "example" was ARM and some Risc processors.

I proved them wrong.

Then they started tripping with IBM mainframes. Nope, I showed
them the documentation of the IBM compilers for mainframes
where they describe the stack and its associated register (r13)

Then they started with the 8051. I showed them that that processor
has a stack (it has PUSH/POP instructions apparently) but it is
too small, so some compilers use an external stack.

Even if they have not a single example, they go on with bullshit of the
style "but an implementation *could* exist that... blah blah blah"

Facts are not important. The C standard does not mention a stack,
and that is it. It is possible then to throw at unaware people that
asks questions in this group sentences like
"C has no stack"
"There is no stack in C"

Since they have no arguments, they discuss with tricks like

1) After you have proved them yet another time wrong, they will
answer with the eternal sentence "The standard doesn't mention a
stack" and the discussion can start from the beginning

2) After you have proved that the machine XYZ DOES have a stack,
they say "But an implementation *could* exist" and the discussion
can start from the beginning.

I decided that it is a waste of time to discuss with them. They just
repeat their bullshit without caring about what you answer to them

Personally I will not answer any more to falcolner and co. "C has no
stack" for them? Let it be.



--
jacob navia
jacob at jacob point remcomp point fr
logiciels/informatique
http://www.cs.virginia.edu/~lcc-win32
 
Reply With Quote
 
 
 
 
Ian Collins
Guest
Posts: n/a
 
      03-16-2008
jacob navia wrote:
> The regulars go on denying that C uses a stack. They should
> read this:
>

If you think that, you really are on another planet.

--
Ian Collins.
 
Reply With Quote
 
 
 
 
Martin Ambuhl
Guest
Posts: n/a
 
      03-16-2008
jacob navia wrote:
> The regulars go on denying that C uses a stack.


Many regulars never bother with this question, never deny nor affirm
anything about C using a stack, and refuse to be part of your stupid
baiting game. Kudos to them; shame on you.
 
Reply With Quote
 
Richard Heathfield
Guest
Posts: n/a
 
      03-16-2008
jacob navia said:

> The regulars go on denying that C uses a stack.


No, the "regulars" go on denying that the C language specification requires
the use of a stack, and this is perfectly true, because it doesn't. The
fact that most (or possibly even all) implementations do use a stack is
irrelevant. They could easily use some other data structure; the reason
they *don't* is that it doesn't appear to have any advantages over a
stack. But if someone discovers such an advantage, the C language won't
stop them from exploiting it. The stack is a bit like gravity. Most (or
possibly even all) C implementations operate in a gravitational field that
tends to accelerate them towards the centre of the Earth at around
9.8m/s/s. Nevertheless, nowhere in the C Standard will you find any such
*requirement* imposed on C implementations, which is just as well for the
future of space travel, right? In the same way, no *requirement* is
imposed on C implementations to use a stack.


> They should read this:
>
> <begin quote>
> Any function in C may be recursive
> (without special declaration) and most possess several "automatic"
> variables local to each invocation. These characteristics suggest
> strongly that a stack must be used to store the automatic variables,
> caller's return point, and saved registers local to each function;
> in turn, the attractiveness of an implementation will depend heavily
> on the ease with which a stack can be maintained.
> <end quote>
>
> This was written by an expert in C.


Nevertheless, it is not normative text.

<snip>

> I decided that it is a waste of time to discuss with them. They just
> repeat their bullshit without caring about what you answer to them


If you read what we wrote, instead of what you think we're writing, that
would make a big difference to these discussions.

> Personally I will not answer any more to falcolner and co. "C has no
> stack" for them? Let it be.


Good. The sooner you drop these ridiculous claims, the better for all
concerned.

--
Richard Heathfield <http://www.cpax.org.uk>
Email: -http://www. +rjh@
Google users: <http://www.cpax.org.uk/prg/writings/googly.php>
"Usenet is a strange place" - dmr 29 July 1999
 
Reply With Quote
 
WANG Cong
Guest
Posts: n/a
 
      03-16-2008
On Sun, 16 Mar 2008 05:53:30 +0100,jacob navia wrote:

> The regulars go on denying that C uses a stack. They should read this:
>
> <begin quote>
> Any function in C may be recursive
> (without special declaration) and most possess several "automatic"
> variables local to each invocation. These characteristics suggest
> strongly that a stack must be used to store the automatic variables,
> caller's return point, and saved registers local to each function; in
> turn, the attractiveness of an implementation will depend heavily on the
> ease with which a stack can be maintained. <end quote>
>
> This was written by an expert in C.
>
> True, there is no mention of a stack in their bible Fact is, there isn't
> any C implementations that don't use a stack to store the automatic
> variables.
>
> Up to now, this people are unable to put forward a single example of an
> implementation that doesn't use a hardware stack (maintained by a
> register in a contiguous memory addressing space)
>
> Their first "example" was ARM and some Risc processors.
>
> I proved them wrong.
>
> Then they started tripping with IBM mainframes. Nope, I showed them the
> documentation of the IBM compilers for mainframes where they describe
> the stack and its associated register (r13)
>
> Then they started with the 8051. I showed them that that processor has a
> stack (it has PUSH/POP instructions apparently) but it is too small, so
> some compilers use an external stack.



Thank you for these provings.

>
> Even if they have not a single example, they go on with bullshit of the
> style "but an implementation *could* exist that... blah blah blah"
>
> Facts are not important. The C standard does not mention a stack, and
> that is it. It is possible then to throw at unaware people that asks
> questions in this group sentences like "C has no stack"
> "There is no stack in C"


Yes, the C99 standard doesn't even leave a word about stack.
Stack is the implementation's thing, beyond the standard's defination.

>
> Since they have no arguments, they discuss with tricks like
>
> 1) After you have proved them yet another time wrong, they will
> answer with the eternal sentence "The standard doesn't mention a
> stack" and the discussion can start from the beginning
>
> 2) After you have proved that the machine XYZ DOES have a stack,
> they say "But an implementation *could* exist" and the discussion
> can start from the beginning.
>
> I decided that it is a waste of time to discuss with them. They just
> repeat their bullshit without caring about what you answer to them
>
> Personally I will not answer any more to falcolner and co. "C has no
> stack" for them? Let it be.


I would say standard C doesn't define the concept of stack, at least now,
although nearly all implementations do.

Please don't play word games.

--
Hi, I'm a .signature virus, please copy/paste me to help me spread
all over the world.
 
Reply With Quote
 
William Pursell
Guest
Posts: n/a
 
      03-16-2008
On 16 Mar, 04:53, jacob navia <(E-Mail Removed)> wrote:

> I decided that it is a waste of time to discuss with them. They just
> repeat their bullshit without caring about what you answer to them


Starting a new thread on the topic is hardly reflective
of your decision that the discussion is a waste of time.
It appears to be the exact opposite, in fact.

 
Reply With Quote
 
Keith Thompson
Guest
Posts: n/a
 
      03-16-2008
jacob navia <(E-Mail Removed)> writes:
> The regulars go on denying that C uses a stack. They should
> read this:
>
> <begin quote>
> Any function in C may be recursive
> (without special declaration) and most possess several "automatic"
> variables local to each invocation. These characteristics suggest
> strongly that a stack must be used to store the automatic variables,
> caller's return point, and saved registers local to each function;
> in turn, the attractiveness of an implementation will depend heavily
> on the ease with which a stack can be maintained.
> <end quote>
>
> This was written by an expert in C.


And it wasn't worth your time either to identify the expert (it's from
a paper written by Johnson and Ritchie) or to mention that it was
published 30 years ago.

> True, there is no mention of a stack in their bible
> Fact is, there isn't any C implementations that don't use
> a stack to store the automatic variables.
>
> Up to now, this people are unable to put forward a single
> example of an implementation that doesn't use a hardware
> stack (maintained by a register in a contiguous memory
> addressing space)


[...]

> Then they started tripping with IBM mainframes. Nope, I showed
> them the documentation of the IBM compilers for mainframes
> where they describe the stack and its associated register (r13)


I read the excerpt you posted from the documentation for *one* C
compiler for *one* operating system on *one* IBM mainframe. It did
not state that the "stack frames" are allocated contiguously, and
another poster stated that in fact they are not. There's your
example.

[...]

> Even if they have not a single example, they go on with bullshit of the
> style "but an implementation *could* exist that... blah blah blah"


How is it "bullshit"? Do you claim that such an implementation could
not possibly exist? (I don't expect a straight answer to that
question.)

> Facts are not important. The C standard does not mention a stack,
> and that is it.


The fact that the C standard does not mention a stack is important
(but apparently not to you).

> It is possible then to throw at unaware people that
> asks questions in this group sentences like
> "C has no stack"
> "There is no stack in C"


I've addressed this in another thread.

[snip]

> I decided that it is a waste of time to discuss with them. They just
> repeat their bullshit without caring about what you answer to them


Then why did you start a new thread?

> Personally I will not answer any more to falcolner and co. "C has no
> stack" for them? Let it be.


I am not CBFalconer. Please do not try to put his words in my mouth,
or mine in his. I do not say this to criticize him, or even
necessarily to disagree with him, but to refute your apparent belief
that everyone who disagrees with you must be making the same
arguments.

--
Keith Thompson (The_Other_Keith) <(E-Mail Removed)>
Nokia
"We must do something. This is something. Therefore, we must do this."
-- Antony Jay and Jonathan Lynn, "Yes Minister"
 
Reply With Quote
 
Malcolm McLean
Guest
Posts: n/a
 
      03-16-2008

"Richard Heathfield" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> Most (or
> possibly even all) C implementations operate in a gravitational field that
> tends to accelerate them towards the centre of the Earth at around
> 9.8m/s/s. Nevertheless, nowhere in the C Standard will you find any such
> *requirement* imposed on C implementations, which is just as well for the
> future of space travel, right?
>

Er, wasn't a Mars Rover stuck because of a buffer overrun in its C code?

--
Free games and programming goodies.
http://www.personal.leeds.ac.uk/~bgy1mm

 
Reply With Quote
 
Harald van Dijk
Guest
Posts: n/a
 
      03-16-2008
On Sun, 16 Mar 2008 05:53:30 +0100, jacob navia wrote:
> Since they have no arguments, they discuss with tricks like
>
> 1) After you have proved them yet another time wrong, they will
> answer with the eternal sentence "The standard doesn't mention a
> stack" and the discussion can start from the beginning


That is a bogus argument. I've seen only one person try to use that. He
shouldn't have, but you're wrong for ignoring everybody else because of
it too.

> 2) After you have proved that the machine XYZ DOES have a stack,
> they say "But an implementation *could* exist" and the discussion
> can start from the beginning.


No, not "an implementation *could* exist", but "an implementation *does*
exist". A specific implementation has been mentioned that doesn't use a
stack, unless by stack you mean something different from what the OP
meant in the thread you should've responded to.
 
Reply With Quote
 
santosh
Guest
Posts: n/a
 
      03-16-2008
jacob navia wrote:

> The regulars go on denying that C uses a stack. They should
> read this:


C does not need to use a hardware stack, which was most probably
what "CJ" meant, and the responses given for his statement were
perfectly appropriate, until you decided to start another flamefest.

> <begin quote>
> Any function in C may be recursive
> (without special declaration) and most possess several "automatic"
> variables local to each invocation. These characteristics suggest
> strongly that a stack must be used to store the automatic variables,
> caller's return point, and saved registers local to each function;
> in turn, the attractiveness of an implementation will depend heavily
> on the ease with which a stack can be maintained.
> <end quote>


Note the crucial word: *suggest* . Not mandate.

<snip>

> Facts are not important. The C standard does not mention a stack,
> and that is it. It is possible then to throw at unaware people that
> asks questions in this group sentences like
> "C has no stack"
> "There is no stack in C"


In the context of what CJ meant (i.e. that C imposed the requirement of
a contiguous hardware stack), the answers were perfectly appropriate.

<snip>

> I decided that it is a waste of time to discuss with them. They just
> repeat their bullshit without caring about what you answer to them
>
> Personally I will not answer any more to falcolner and co. "C has no
> stack" for them? Let it be.


So you need to start another thread simply to say you won't discuss this
further?

Jacob, I don't think newbies are so stupid that they need some sort
of "rescuing" by you. The vast majority of newbies are not even
concerned with the stack. Those who ask specific questions (like CJ)
are given the appropriate response. No one is saying "C has no stack".
In fact Keith was written several excellent posts on the matter that
elucidate the issue more clearly than you or I could. Why don't you
give this a rest?

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Re: Pedants, please help on integer types Keith Thompson C Programming 1 08-05-2012 09:56 PM
Re: Pedants, please help on integer types rudolf C Programming 0 08-05-2012 08:31 AM
Pedants jacob navia C Programming 121 07-03-2008 11:37 AM
Re:YOU ARE A BUNCH OF CHILDREN!!! The Poster Formerly Known as Kline Sphere MCSE 3 01-12-2005 05:26 PM
OK you pedants - what is the *exact* size of a 35mm image? Alan F Cross Digital Photography 5 08-05-2003 10:47 PM



Advertisments