Topic: Why I don't write in {pascal, smalltalk, ...}


Author: fouts@cello.hp.com (Marty Fouts)
Date: Mon, 20 Sep 1993 14:21:15 GMT
Raw View
 > If you want to restrict yourself to the Pascal-like
 > subset of C, why not simply use Pascal?

That is a retorical question.  But it gets asked around here often
enough that I thought I would write down *my* answer.  Your milage
*will* vary:

There are two reasons why I chose a programming language.  The ideal
reason is because it is the language best suited to the task at hand.
To accomplish this, over the years I have learned how to use a large
number of programming languages, ported obscure tools to odd
architectures and otherwise devoted a significant percentage of my
time to 'honing my axes.'

However, I rarely get to apply the suitability test to chosing a
language because the second reason for chosing a language usually
dominates.  I work in *the real world* which means that my choice of
programming language is frequently forced by external conditions.
Many of these conditions are described in comp.lang.c++ as proof that
C++ is a succesful language.

For the past decade, C was the only language available for most of my
programming work for the simple reason that the majority of code in
the domain I work in was written in C, so inertia demanded that the
remainder also be in C.  A few years ago, "C" was replaced by "ANSI
C", although most of the code I have to deal with is still K&R legacy.

Around the turn of the century, when C++ is finally standardized, I
expect the same sort of inertia to cause ANSI C to be replaced by C++,
because such an excelent job is being done at marketing C++ as the
replacement of C.  It may even be true that in some cases C++ will be
the right choice for the job, but that is immaterial to the choice.

Even though I believe C++ to be a fundamentally flawed language for
the simple reason that it is an attempt to "improve" an existing
language, rather than an attempt to design a language to be effective
in a specific application domain, I also recognize that for the very
same reason, I will be required to use C++ if I intend to continue
working in the same application domain.

Thus, I have chosen to invest some of my effort in understanding the
C++ standardization process, in the hopes that I might in some small
way influence the language that I will be forced to live with.

To repeat: why don't I program in fooBarMumble?  Because I gotta meet
a mortgage payment.

Marty

--
Martin Fouts
fouts@hpl.hp.com