[comp.lang.c] Features C doesn't have

mouse@mcgill-vision.UUCP (der Mouse) (03/10/88)

In article <7314@brl-smoke.ARPA>, gwyn@brl-smoke.ARPA (Doug Gwyn ) writes:
> In article <2336@umd5.umd.edu> chris@trantor.umd.edu (Chris Torek) writes:
>> So why is this solution insufficient?
> Because it's a pain in the lower part of the anatomy!  Or, in other
> words, just because it is theoretically sufficient does not mean that
> it is convenient.  This is one of the limitations of C that Fortran
> programmers have difficulty with; they're used to being able to write
> reasonable array manipulation routines.

COBOL programmers will complain because printf doesn't have the full
power of the PICTURE specification.

LISP programmers will complain because C memory allocation must be
managed by the programmer.

FORTRAN programmers will complain because C lacks exponentiation and
variable-dimension array arguments.

SNOBOL programmers will miss the pattern-match operators they're used
to using.

APL programmers will want all sorts of things C doesn't have.

Pascal programmers will complain because C doesn't have NEW() or strong
typing.

Ada programmers will want concurrency and generics and Ghod-only-knows
what else.

Can't we stop complaining because C doesn't have this feature or that
feature that some other language does have?  C isn't the ultimate
language and doesn't try to be.  It fits its niche very well; can't we
leave it there?  Look at what you want to do, then look over the list
of languages available to you and select the one best suited to the
task.  Please don't complain because the ones that aren't suited to
your task aren't suited to your task, and don't try to change them so
that they are.  Use another language instead, hopefully one better
suited to your problem.

The language you want isn't available on your machine, or you can't
afford it, or your boss won't let you, or....?  Well, the world is not
perfect.  Complain, yes, but make sure you identify the problem
correctly: the appropriate language is not available.  That the
languages that are available aren't suited to your task is not the
problem you should try to solve.

If there is *no* language that seems appropriate, perhaps it's time to
invent one.  Drawing things from existing languages is appropriate
then, but complaining about things you don't want from the existing
languages is not.

					der Mouse

			uucp: mouse@mcgill-vision.uucp
			arpa: mouse@larry.mcrcim.mcgill.edu