Boost logo

Boost :

From: Beman Dawes (beman_at_[hidden])
Date: 1999-12-12 11:08:57


At 11:21 AM 12/12/99 +1300, Ross Smith wrote:

>Personally, I always use the <*.h> forms of the C library headers
>instead of the <c*> forms. There are two reasons for this: Windows
and
>Unix.
>
>The Posix API headers all use the <*.h> forms, and indeed many of
them
>share the same name as the standard C headers, with additional
contents.
>Similarly, quite aside from the MSVC issue, the Windows API headers
>include several <*.h> headers (and I'd expect the same to be true of
any
>other OS API). In the real world, virtually any non-toy program is
going
>to need to use the Posix or Windows API.

That's ridiculous! I work on major industrial software all the time
that never uses Posix or Windows API's. These are big batch and
embedded systems where neither the Posix or Windows API are even on
the radar screen, let alone actually used in production code.

Doing standards work you see quite a lot of this; a large group of
programmers always uses A and never heard of anyone not using A, and
so jumps to the conclusion that A is universal. But up pops another
large group the never uses A, never heard of anyone actually using A,
and so jumps to the conclusion A is unimportant.

>Yes, I know the party line is that OS APIs should at some point in
the
>future be enclosed in their own namespaces, but unfortunately some
of us
>labour under the handicap of having to write code that works today.
>
>Frankly, I think the <c*> headers were a mistake. People are going
to
>have to use the <*.h> headers anyway for the foreseeable future. so
why
>bother with the <c*> ones? I hope (I couldn't find any mention of
this
>point in the standard) that we at least have a guarantee that
including
><foo.h> and <cfoo> in the same module is always harmless; otherwise,
a
>lot of libraries, including Boost, are going to be useless.

While it would always be nice to find workarounds for common
problems, the bottom line for Boost is to try to make the C++
standard work. Everyone of us probably thinks that there is some
part of the standard which was a mistake, but we still try to work
with it.

Cheers,

--Beman


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk