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