delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2001/06/29/22:26:09

From: Stan Moore <smoore AT exis DOT net>
Newsgroups: comp.os.msdos.djgpp
Subject: Re: DJGPP reserves wrong int size
Date: Fri, 29 Jun 2001 21:19:07 -0400
Message-ID: <ge2qjtchv55q5k54f81hq3eh8suh4p9k09@4ax.com>
References: <9dde68b7 DOT 0106241053 DOT 2a385311 AT posting DOT google DOT com> <slrn9jcd8c DOT kb DOT kaz AT cafe DOT net> <3b37e7cc DOT 288391695 AT news DOT primus DOT ca> <eg1ijtcvubi4utrqpk860oum1k58metab8 AT 4ax DOT com> <3b3b4b39 DOT 212640295 AT news DOT primus DOT ca>
X-Newsreader: Forte Agent 1.8/32.548
MIME-Version: 1.0
NNTP-Posting-Host: digital-2-108.exis.net
X-Trace: grouper.exis.net 993863769 digital-2-108.exis.net (29 Jun 2001 21:16:09 -0500)
Lines: 143
Organization: A Customer of Exis Net Inc
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

On Thu, 28 Jun 2001 15:32:39 GMT, invalid AT erehwon DOT invalid (Graaagh the
Mighty) wrote:

>On Tue, 26 Jun 2001 23:05:45 +0100, Mark McIntyre
><mark AT garthorn DOT demon DOT co DOT uk> sat on a tribble, which squeaked:
>
>>On Tue, 26 Jun 2001 01:42:23 GMT, invalid AT erehwon DOT invalid (Graaagh the
>>Mighty) wrote:
>>
>>>>Note that you are asking questions about compiler implementation internals that
>>>>are off topic in comp.lang.c.
>>>
>>>I fail to see how that is relevant in comp.os.msdos.djgpp.
>>
>>because this was crossposted to many groups. So he gets an answer
>>relevant to that group. Its always worth reading the group list.
>
>The group list, as displayed by Free Agent, was "comp.os.msdos.djgpp".
>(It appears in the window title when an article is being viewed. The
>title changes to the subject line when writing an article.)

FA's title bar shows the group you are reading the message in, NOT all
the groups involved in a cross post. I'm removing the other groups
from this post and only posting to c.o.m.d. I'd try to help you see
the cross posted groups using FA, but that would mean you actually
reading the docs - you have made it quite clear (in this and other
threads) how difficult you find it to spend any of your time reading
docs.

>
>Don't, by the way, suggest I use another news reader. The alternatives
>make my skin crawl. One comes from Microsoft. Netscape's regularly
>hangs the OS. The only remaining free ones for Windoze I am aware of
>are crummy ports of Unix ones, and get the worst of both worlds, as
>they use the crappy Windoze interface but don't stick to its standards
>and you need a degree in rocket science and advanced linear algebra in
>order to so much as configure them to talk to your ISP's news server,
>let alone actually subscribe a group and read 1 article from it.

By all means use any newreader you like. Choice of readers is a near
religious topic and everyone must ultimately decide for themselves.
However, your chioce of newsreader and FA specifically have nothing to
do with your crossposting to multiple groups. FA gives you full
control over posting, and never forces you to cross post. Newreaders,
are tools. Some use them well while others use them poorly. I think
you'll find that crossposting in general will get you more grief than
gain, and I'll promise you that posting to groups like c.l.c or other
groups known for their shall I say "intensity" will be an emotional
experience and you will do a lot more defending your opinions and
positions.

>
>(DJGPP, fortunately, doesn't get "the worst of both worlds", although
>RSXNTDJ did during its heyday. It is no more rocket science than any
>other C compiler out there -- arguably the snazzy commercial ones are
>worse for that because they hide some of the process and then fail in
>obscure ways you don't know how to fix, and then you don't have a
>newsgroup for support, you have their hugely expensive "toll-free"
>number. And it doesn't pretend to be a Windoze program, nor does it
>need a GUI to be used effectively. Unlike, say, your editor, or your
>newsreader, where you want to have multiple windows open at once and
>to be able to navigate visually rather than by the usual process of
>"hit the eight bucky keys and the other key, frantically escape out of
>the unfamiliar prompt, go to the help file, try to read it, try to get
>out of the help browser, fail, try to find the section of the help
>file about exiting the help browser, hit the eight bucky keys and the
>other key...")

If you find programming tools or other apps this difficult, have you
considered that maybe programming isn't your cup of tea? I could be
wrong but you seem VERY easily frustrated and you seem to demand
INSTANT gratification and you don't seem to have much patience when
things aren't going your way. I don't mean those observations as a
slam, my point is that those qualities and programming don't mix. 

>
>>The result of the COMPILATION is some translated text which may be an
>>object module, or may be a hippo. ISO doesn't define that.
>
>If so, they made a rather large oversight, since that means I can call
>my program that occasionally reboots the machine and otherwise
>generates pretty Mandelbrot fractals "an ANSI C Compiler" and nobody
>can prove me wrong... All I have to do is make it able to read a
>source file, and proceed to generate a Mandelbrot fractal (or,
>perhaps, reboot the machine)...

I do know people on the ISO committee, and they havent authorized me
to speak for them. Nevertheless, I don't think they would lose any
sleep because you don't understand the ISO rational. The ISO statndard
describes the required behavior that one can expect from a complying
input. You clearly have never read any of the standard, as your
assertions above are nonsense. 

On the other hand, if the ISO tried to specify an object module format
or even an assembly language output THAT would have been a mistake -
and I'd wager real money that we would still be waiting for a
published standard. How the behavior is accomplished is an
implementation detail. If someone were to train hippo's to perform
properly, they could possibly become a complying implementation of the
ISO C standard. ( I personally want no part of optimizing or debugging
this hypothetical hippo implementation :)

Actually I suspect you could do a google search and find several
references to the oft cited "nasal demons" that can occur when one
uses an input that ISO declared to result in "undefined" behavior. So
if you write code that results in "undefined" behavior and the program
does as you suggest and generates Mandlebrot..., reboots, causes
demons to fly out of your nose, or even turns into a hippo it would be
valid for an ANSI C compiler. For me, DJGPP has always produced a lot
less exciting behavior, no matter what I've put in to it. How about it
DJ, Eli, maintainers - any chance of getting some nasal demons in a
future release? :) For the record I did come close once trying to get
my printer to work in ntemacs; I think I still have that code
somewhere....

bottom line:
C is a high level language for humans to input into compilers and
knows nothing about 1;s or 0"s and certainly doesn't know anything
about the number of bits used to represent an integer in a stack.

<snippage>

>I hate to burst your theoretical bubble, but programmers can and will
>care about the code speed and memory requirements, and this isn't even
>wrong. Why, otherwise, do they make *optimizers*?

And people will continue to see Elvis too :)  Premature optimization
causes more bugs and grief than any other single programmer activity.
My only real point for delurking for this thread was to suggest Jon
Bentley's Programming Perls books. They are chock full of wisdom about
many topics, including optimizing and other code tunings. Guys like
Bentley, Kernighan, and others who take the time to capture and
dispense the hard won collective wisdom from programming history beat
a steady drum that says experience teaches that looking at 1's and 0's
is "almost" never the best way to optimize a program. The biggest
gains by far come from much higher level concepts, and it's always
better to exhaust the higher level opportunities first before the last
resort of checking bits. 

I would also add that trying to grok bits without first having a very
detailed knowledge of the hardware is time misspent.


- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019