BYTE.com > Features > 2005
The Economics of Programming Languages
By David Welton
April 18, 2005
(The Economics of Programming Languages
: Page 1 of 1 )
I like programming languages a lot. I've used a number of them
professionally, and have even written one myself—Hecl—although it
borrows most of its ideas, if not source code, from Tcl. And, of
course, I've taken part in my share of debates and discussions on
"which language is best," a topic which of course doesn't have one clear
answer but is often the source of heated arguments.
I recently read an interesting book, Information Rules: A Strategic Guide to the Network Economy by Carl Shapiro and Hal R. Varian (Harvard Business School Press, 1998; ISBN: 087584863X), which talks about the economics of the world of high
technology. While reading it and thinking about programming
languages, a number of things clicked. They aren't earth-shattering
conclusions. On the contrary, a lot of them are more or less common
sense, but it's nice to read that there are some methodically studied
theories behind some of the intuitions, hunches and observations I've
made over the years.
In this article, I'll attempt to list what I believe to be the most
salient points of the economics of programming languages, and describe
their effects on existing languages, as well as on those who desire
to write and introduce new languages.
Languages as Products
Programming languages, like any product, have certain properties.
Obviously, like any other sort of information good, production
costs in the sense of making copies are essentially zero. Research
and development (sunk costs) are needed to create the software itself,
which means that an initial investment is required, and if the
language is not successful, chances are the investment can't be
recouped.
This applies to many information goods, but programming languages also
have some qualities that make them special within this grouping.
Namely, that they are both a means of directing computers and their
peripherals to do useful work, but they are also a means of exchanging
ideas and algorithms for doing that work between people.
Page 1 of 1
BYTE.com > Features > 2005
|