The C FAQ

B

bartc

The first time I met a computer with a soldering iron in my hand was in
1963. I was a full grown Customer Service Engineer for the company.

For me that was the beginning of "now" and before that is "past".

MSDOS and CP/M are still very much "now" to me.
That's all "past" for you but I feel no need to "get over it".

The MSDOS stuff seems ancient now (and it was new for me too at one time).

There's no reason now to give such prominence to the problems of this
particular 1980s processor (8086), rather than a dozen others.
 
F

Flash Gordon

santosh said:
Yes, but that is not pertinent to this discussion is it?

Actually it is, since you claimed it is still lurking beneath Windows.
The NT family
emulates the DOS interface, but they still provide it, allowing almost
all programs to work, that'd run on native DOS.

In effect, they do "provide" DOS right upto Vista, though my
understanding is that Windows 7 has finally dropped support for it.

Things have been gradually stopping working since before Windows 7.
Hell, not everything worked in a DOS shell under Win95!
So potentially, all users of versions of Windows up to XP (and I think
Vista too), *can* use DOS programs and do a subset of DOS programming,
which is a *huge* user base.

Some is not all, and your statement about DOS lurking under Windows 2000
is still false.

Well, to be fair, top of the notch places have moved on to using some
version of Visual C++ and gcc under Linux, but the seedier
establishments still use old installs of Windows 98/DOS combo and
Turbo C/C++, since, I guess, they prefer saving the money they'd
otherwise've to shell out for Windows and Visual Studio licenses.

Or they could shell out the full cost of a free CentOS install...

They may well still be around, but they are doing their students a
serious disservice.
But their numbers are dropping. DOS might completely disappear in
about 5-10 years, except for hobbyists and other peculiar instances.



Yes, but since it's a volunteer effort by Mr. Summit, it'd be mean to
carp too much without actually lending a hand.

I'm fully aware of that, and I was not carping.
It's still a very
useful resource, but it used to be periodically posted to clc. I
wonder why that has been discontinued. A weekly post of it might bring
it to the attention of newbies and lurkers more effectively than
mentioning it only in occasional replies.

There is meant to be an automated monthly posting, but I don't think it
is working reliably.
 
N

Nobody

Nope. MS-DOS is still around, albeit as a lurker beneath WIndows. Yes,
huge numbers of people still use Windows 98/ME/2000/XP, all of which
provided DOS mode/prompt.

95/98/ME provide an MS-DOS prompt (and mode). 2K/XP/etc don't.

2K/XP/etc provide a command interpreter (cmd.exe), which is mostly
compatible with MS-DOS' command.com, and they provide several command-line
utilities which are are mostly compatible with MS-DOS utilities of the
same name.

However, the similarity ends there. While cmd.exe and the utilities are
compatible with various MS-DOS programs, they are *not* MS-DOS programs,
but 32-bit Windows executables.

2K/XP/etc do provide support (via NTVDM) for running MS-DOS and Win16
programs (although not on 64-bit systems), but this is quite unrelated to
the console or the command prompt.
 
P

Phred Phungus

Andrew said:
No, Win7 is a -lot- faster. It's prettier and easier to use and
all that, but there's clearly been a lot of work under the hood.
(Though, they still won't let you accept RDP connections with a
home version. Silly Microsoft, I guess I'll stick with Linux.)


Andrew

Andrew, Idunno. I have experience with this product, as my girlfriend
uses it (ergo I do). Why does a software component need a time machine?
--
 
S

santosh

Nobody said:
95/98/ME provide an MS-DOS prompt (and mode). 2K/XP/etc don't.

2K/XP/etc provide a command interpreter (cmd.exe), which is mostly
compatible with MS-DOS' command.com, and they provide several command-line
utilities which are are mostly compatible with MS-DOS utilities of the
same name.

However, the similarity ends there. While cmd.exe and the utilities are
compatible with various MS-DOS programs, they are *not* MS-DOS programs,
but 32-bit Windows executables.

2K/XP/etc do provide support (via NTVDM) for running MS-DOS and Win16
programs (although not on 64-bit systems), but this is quite unrelated to
the console or the command prompt.

I may be wrong, since it's been a while since I've used Windows XP,
but last time I checked, they do provide COMMAND.COM and most of the
other standard DOS utilities. Of course, they don't run on top of DOS,
but NTVDM, but I don't see how that makes much of a difference from a
programmer's point of view, as long as he confines himself to
application programming and doesn't do things like switching to pmode
and so on.

I can very well run Turbo C/C++ and other DOS products in XP, so when
considering the potential DOS user base, IMO we'll have to consider
those using XP too, not just up to 98/ME.
 
S

santosh

[ ... ]
Or they could shell out the full cost of a free CentOS install...

Funny. At the financial and technical level at which these places are
run, no one there would even know *what* was CentOS, let alone have
the money/motivation to hire someone familiar with UNIX to install and
manage the systems.
They may well still be around, but they are doing their students a
serious disservice.

Well, if the aim in just to teach standard C, then I guess DJGPP would
be as good as any other compiler. After all, it implements much more
C99 than even the latest MS Visual C++.

One good side-effect of using DOS would be to introduce students to a
CLI. It's shocking how many people who've exclusively used only
Windows don't even know about the existence of text interfaces.

<snip>
 
N

Noob

Jacob said:
This document shows its age. I remember complaining here some years ago
about this MSDOS questions but they are still there:

[...]

MSDOS died some 20 years ago (more or less).

CAN WE GET RID OF THAT?

There is no word about windows/unix/Mac OS X and systems used TODAY...

It should be obvious to everyone that Jacob is 50% troll.
 
G

gwowen

It should be obvious to everyone that Jacob is 50% troll.

Um, no. Jacob, who's confrontational manner I do not approve of, has
posted more useful information to comp.lang.c in the last 2 or 3 years
than almost anyone else. You, however, have posted none.
 
S

Seebs

Um, no. Jacob, who's confrontational manner I do not approve of, has
posted more useful information to comp.lang.c in the last 2 or 3 years
than almost anyone else. You, however, have posted none.

Strictly speaking, that he's posted useful information doesn't disprove
the claim that he is 50% troll. What's significant is that he posts a LOT
of useful information, and a very small amount of confrontational stuff,
so even if we call all the confrontational stuff "trolling", I'd say he's
at most 10% troll.

He remains one of the compelling arguments for figuring out how to score
articles UP in my scoring-based newsreader. :)

-s
 
G

gwowen

Remember that C is used in other contexts than writing PC software.

The 8051 has 256 bytes of ram and the options for programming it are
Assembly and C...  I prefer C   :)

True, but its pretty hard to see the relevance of that to the *DOS-
specific* parts. I've never used an 256 byte embedded system that
prints "Abort, Retry, Ignore" as an error, or that had the concept of
"TSR programs".

I don't know whether to say this or not but ... it's interesting to me
that the FAQ contains answers to so many non-standard system-
specific. It appears, contrary to the assertions of some, that at the
time the FAQ was being written, c.l.c'ers did not consider their
newsgroup to be off-limits to people asking system-specific
questions.

In fact, it would seem, that these were among the more frequently
asked questions, and rather than tell them asker to "ask in a system
specific group", a list of useful answers was created and
distributed. Of course, the non-existence of such system specific
groups may have had a bearing on this....
 
S

Seebs

I don't know whether to say this or not but ... it's interesting to me
that the FAQ contains answers to so many non-standard system-
specific. It appears, contrary to the assertions of some, that at the
time the FAQ was being written, c.l.c'ers did not consider their
newsgroup to be off-limits to people asking system-specific
questions.

Uh, no. I was there, and we ALWAYS thought those were off-topic. I've
been using Usenet since before the Great Renaming.

The point of a FAQ is not necessarily to be 100% topical, but to answer
questions which come up a lot to reduce traffic to the group. Since the
purpose of a FAQ is to *prevent* discussion of an issue, the presence of
an off-topic issue in a FAQ does not prove that people would welcome
discussion of that issue!

-s
 
J

jacob navia

gwowen a écrit :
True, but its pretty hard to see the relevance of that to the *DOS-
specific* parts. I've never used an 256 byte embedded system that
prints "Abort, Retry, Ignore" as an error, or that had the concept of
"TSR programs".

Exactly.

All this reactions have something in common:

MSDOS is surely not dead in the mind of some people here. They
are still in those times, and a FAQ of those times looks very
modern to them.

With age, some people loose the ability to realize change
and adapting to new stuff. They close themselves from the present
and prefer living in some glorious past, long gone but still
present in their minds.

I have mixed feeling when I see them. There is (of course) the
fear that I could be like them in the future, there is the pity
looking at them and their endless remembrance of times long gone,
and their lost future.

Those people have completely lost the future as a tense: they
never speak about it. Any change is a challenge, any change
is a threat and they perceive it as such.

Look in this group:

Any change to C is perceived as a threat. The overwhelming reaction
to a proposal of getting rid of MSDOS in the FAQ proves beyond
any doubt where those people are living.

That is why I am so despised in this group, now it is at least
clearer. I want to change stuff, and I try to project myself into
the future, and (worst) I even speak about the future of C.

Everybody (with a few exceptions) sees C as a thing of the past,
joined by a few nostalgic old C programmers that live in 1989,
with MSDOS and Turboc.

The fact that those times were TWENTY years ago doesn't bother them.

They want to STAY there, in their untouched glorious past.
 
G

gwowen

Uh, no.  I was there, and we ALWAYS thought those were off-topic.  

It'd be interesting to see contemporary posts that backs that up.
Which is not to say that you're being dishonest, just that
contemporary threads would be interesting. I have a tendency to
suspect sentences that being ascribe motives that don't use first
person singular.

Arbitrarily jumping back to 1992 on google.groups (around post
130000), I took entirely unscientific sample of 10 threads with titles
that looked system specific, which had more than one article, and did
not ask questions in the FAQ. Titles were:

1. "Curses eats the right bottom corner? (ISC SysV3.2)"
2. "Vax C problem"
3. "C socket programming"
4. "Help! Need to detect the CRT's vertical retrace signal"
5. "Graphics.h"
6. "HELP! How to do VGA graphics screen dumps onto an IBM Proprinter
II"
7. "Timing problems on 486-33--delay() function in Turbo C"
8. "HELP Menus with Mice on PC with Microsoft C"
9. "Clear screen"
19. "Borland Turbo C++ and memory problem at startup"

In only two of these threads [(3) and (4)] did anyone redirect the
questioner to another group, or dismiss them as off-topic, and even in
those cases someone else supplied a full or partial answer. In the
vast majority of cases, the people following up were informative,
courteous and helpful.
The point of a FAQ is not necessarily to be 100% topical, but to answer
questions which come up a lot to reduce traffic to the group.

Personally, as a "form defines function" kind of guy, when theoretical
notions of topicality clash with "questions which come up a lot", I'm
on the side of "questions which come up a lot".
 
S

Seebs

MSDOS is surely not dead in the mind of some people here. They
are still in those times, and a FAQ of those times looks very
modern to them.

lolwut?

MS-DOS has been irrelevant to my programming experience since about 1992,
when I finally ditched a heinously awful consulting gig that depended on
DOS overlays. I have never looked back.
Those people have completely lost the future as a tense: they
never speak about it. Any change is a challenge, any change
is a threat and they perceive it as such.

Again, lolwut?
Any change to C is perceived as a threat.

This is not true. We've got several of the people you view as perceiving
any change as a threat advocating new syntax within the last week or so (The
suggestion to use {} as an idiom for "initialized all to zeroes"). I've
written up and proposed changes to C.

Don't mistake my disagreement with you about the ideal nature of a "container
library" for a general opposition to change in C.
The overwhelming reaction
to a proposal of getting rid of MSDOS in the FAQ proves beyond
any doubt where those people are living.

Actually, no. It proves that I don't like to throw away data until long,
long, after it's ceased being useful. Not just because it's no longer
a major priority for most people.
That is why I am so despised in this group, now it is at least
clearer. I want to change stuff, and I try to project myself into
the future, and (worst) I even speak about the future of C.

None of this has ANYTHING to do with disliking you. I dislike you because
you make up stories about how other people think, and insist that these things
you've invented are what they think or feel, and ignore anything they tell
you. That's a pretty nasty thing to do to people, and I don't like it.

I don't think, though, that it would be fair to say that I "despise" you.
I think you're a valuable contributor with a lot of good insight into C,
and I would love it if more people contemplating various additions to C
were aware of some of your work on lcc-win.
Everybody (with a few exceptions) sees C as a thing of the past,
joined by a few nostalgic old C programmers that live in 1989,
with MSDOS and Turboc.

Really, no. Most of the code I'm writing these days probably has unambiguous
dependencies on APIs that hadn't even been CONCEIVED of in 2000. Now,
I do admit, that's about a decade ago... But that's because we have
requirements to continue supporting extremely old host systems for some
of our stuff. (But not MS-DOS old, just "early 2000s" old.)

Meanwhile, I'm also spending a fair amount of my programming time doing
Ruby on Rails, and working on an iPhone app as a hobby. This is not 1989,
and no one thinks it is.

And if you want people to like you more, you might try not asserting such
ridiculous things about them, hmm?

-s
 
S

Seebs

Arbitrarily jumping back to 1992 on google.groups (around post
130000), I took entirely unscientific sample of 10 threads with titles
that looked system specific, which had more than one article, and did
not ask questions in the FAQ.

That's not so useful. It would be more interesting to look at the discussions
of topicality per se. In the early 90s, a lot of people gave up on trying
to make the group useful -- that's one of the reasons clcm was formed, because
clc had been overwhelmed by noise.
Personally, as a "form defines function" kind of guy, when theoretical
notions of topicality clash with "questions which come up a lot", I'm
on the side of "questions which come up a lot".

I'm okay with "questions which come up a lot, or used to come up a lot and
would be really hard to research nowadays because all the sources are
pre-Google". :)

-s
 
G

gwowen

That's not so useful.  It would be more interesting to look at the discussions
of topicality per se.  

That's not so useful. The only people who discuss topicality per se
are those who
a) think topicality is topical
b) find topicality discussions interesting.

That tends to mean the discussions are between the hardliners on both
sides, so your sample is intrinsically skewed. It's the same reason
that political discussions on the internet tend to attract drooling
morons from both sides -- people with moderate opinions frequently
have better things to do.

You don't get a balanced idea of a population by listening to its most
vociferous. The best lack all conviction, where the worst are full of
passionate intensity, as the poet wrote.
 
B

bartc

Seebs said:
This is not true. We've got several of the people you view as perceiving
any change as a threat advocating new syntax within the last week or so
(The
suggestion to use {} as an idiom for "initialized all to zeroes"). I've
written up and proposed changes to C.

{} instead of {0}? Yeah, that's a big change.
Actually, no. It proves that I don't like to throw away data until long,
long, after it's ceased being useful. Not just because it's no longer
a major priority for most people.

Anyone who sees the MSDOS stuff in the FAQ is going to wonder how old,
out-of-date, irrelevant and unreliable the rest of it is going to be.

The C FAQ is obviously just a static file, but if it was a dynamic resource,
the MSDOS queries would have long vanished into the archive section.
 
J

jacob navia

bartc a écrit :
Anyone who sees the MSDOS stuff in the FAQ is going to wonder how old,
out-of-date, irrelevant and unreliable the rest of it is going to be.


That apparently doesn't seem to worry anyone here.
 
K

Keith Thompson

bartc said:
{} instead of {0}? Yeah, that's a big change.

No, it's a rather small change. Nobody said it was a big one.

jacob, however, claimed that "*Any* change to C is perceived as a
threat" (emphasis added). To refute such an absolute statement,
it's sufficient to present a counterexample. I'm sure I'm one of
the people who jacob claims perceives any change to C as a threat,
but I recently proposed a change to C.

If jacob wants to make more reasonable statements, we can have a
reasonable discussion. In particular, jacob is welcome to stop
making claims about other people's motivations; he makes many such
claims, and I don't remember one of them being correct.
Anyone who sees the MSDOS stuff in the FAQ is going to wonder how old,
out-of-date, irrelevant and unreliable the rest of it is going to be.

The C FAQ is obviously just a static file, but if it was a dynamic
resource, the MSDOS queries would have long vanished into the archive
section.

Agreed, mostly. Let me emphasize that the FAQ is a one-man volunteer
project, and Steve Summit is under no real obligation to spend time
on it. Perhaps people could volunteer to spend some of their own
time helping out. Pointing out problems is valuable, but offering
fixes for them is much better.
 

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,777
Messages
2,569,604
Members
45,206
Latest member
SybilSchil

Latest Threads

Top