ANSI, K&R, H&S (was: Re: Just a minor new twist on free())

Paul D. Smith pds at lemming.webo.dg.com
Sat Nov 3 06:14:42 AEST 1990


[] The final reference for portability, of course, is experience.
[] Don't use features that have bitten you in the past on any machine.
[] That's why I'm surprised by Paul Smith's comment:
[]
[] > In addition, I don't think I've seen a C program in the last 8
[] > years which does not use any language features except those found
[] > in K&R I!
[]
[] What kind of insulated environments do these people work in,
[] anyway?

Until somewhat recently I've been working on a proprietary system;
what good is it to make your C code portable when you have much larger
portability issues (DG's proprietary AOS/VS operating system had
OS-supported multi-tasking and other goodies) which will cause your
code to not work on any other system without major re-working?

Recently, on DG's new UNIX 88k RISC platform, we've been cuddled in
the warm and fuzzy insulation of the GNU C Compiler; it's almost
universally available on modern UNIX systems, and since I'm in
networking it's kinda hard to write code where you don't have close
ties to the OS.

I have strong feelings about the enhancements to C that ANSI provides,
mainly in the strong-typing (moderate-typing? :-) and data abstraction
areas.  I'm not willing to give up these badly needed enhancements to
the language when I have a solid leg to stand on (the ANSI standard)
and a widely available, free (!!) compiler which implements those
enhancements.  Sorry, but I'm stubborn and the "well, there's always
some poor guy with a card punch reader -- what about him?" argument
just doesn't cut any butter with me.  All the more reason for him to
get a new AViiON, IMO! :-) :-) :-) :-) <--Note smileys!!!

I don't consider any program "LCD C" which uses external identifiers
not unique in 6 monocase characters or internal identifiers not unique
in 8 characters, and which doesn't *come with* a scheme for shortening
them to acceptable levels, whether a seperate "compacter" program or
the good old standby #define scheme.

Saying it's easy to do if you need it is a cop-out, IMHO.  I can't
compile it as-is, so what's the point of all that pain and torture and
sacrifice to make it super-portable?

Portability is very important to me; I'm going to make all my code
rigorously portable under the ANSI standard for the C programming
language.  (thank you, thank you! <bow, wave, bow> I now return the
soapbox to the K&R I proponents for their equal time rebuttal...:-)
--

                                                                paul
-----
 ------------------------------------------------------------------
| Paul D. Smith                          | pds at lemming.webo.dg.com |
| Data General Corp.                     |                         |
| Network Services Development           |   "Pretty Damn S..."    |
| Open Network Applications Department   |                         |
 ------------------------------------------------------------------



More information about the Comp.std.c mailing list