[lbo-talk] Speaking of intelligence....

Tayssir John Gabbour tayssir.john at googlemail.com
Mon Nov 26 19:16:41 PST 2007


On Nov 26, 2007 11:17 PM, ravi <ravi at platosbeard.org> wrote:
> The reverse of that question is also legitimate: why are we using C or
> Perl or Assembly? Because, after many an attempt to do without, we
> find that we cannot! I believe there is a bit of truth to both sides:
> languages can be a lot more programmer/user-friendly but also complex
> tasks require complex expression. The latter was part of the point I
> was trying to make about real world code.

I think we use languages like C because they won in the marketplace. Certain Unixes thrived in the market because they're cheap. Kernighan and Mashey (in "The Unix Programming Environment") argued that:

"Success or failure often depends on on nontechnical factors,

whose importance often goes unrecognized by those who evaluate

systems on purely technical terms."

(Shades of radical tech historian David Noble.)

Programming languages are products. Some win in the marketplace. Just as Kernighan and Mashey claimed, I too agree there's a technical bar that successful systems must pass, but beyond that minimal standard, nontechnical factors can dominate. (I rarely meet a programmer who gets to choose what language she implements in. Office politics lies this way.)

Most languages simply don't support many paradigms. They don't let programmers add something so simple as an improved for(;;) loop to the language (without rewriting the compiler and being unusable by most others), much less let you add powerful object-oriented features. Simple addition results in overflow when the numbers are a little too big. Most either don't support functional programming, while some focus on it so much that it's hard to simply iterate. Many barely have exceptions, not to mention anything more powerful. Most are weak at multiprocessing. Most don't easily let you work "under the covers" with the underlying machine. Most either don't support static typing, or do so to a stifling extreme.

Languages differ sharply in both semantics and syntax. In my view, both are vital. There is a bias in computer science against treating syntax as important, but for instance, fluid syntax turns out to be important to "code-is-data."

Tayssir



More information about the lbo-talk mailing list