Sure or some representative samples anyway. Here's "Ed" (hmm ... Edgar Dijkstra, perhaps?), grumbling about the popularity of Perl:
We've spent all this timesince the early 1960sbefore the Beatlesdeveloping semantic theories, so that we can design simple and elegant programming notations that are easy to reason about, and we know how to develop a program and its proof hand in hand, so that we can know the program is correctprovided we write it in a programming language with clean semantics and no side-effects, aliases or abrupt transfers of controlso we don't have to rely on mere testing, and, after all that, people go on using programming languages with nothing but side-effects and aliases and abrupt transfers of control.
"Bernie" responds to this by saying that Ed's ideas are unrealistic:
You can't really expect people to develop the sort of large-scale systems we're seeing nowadays from a formal proof ... If you use a programming language that helps you re-use existing code, and uses strong type checking on a rich and reliable system of types, you can assemble systems out of reliable components, and the type checker will make sure, at compile time, you only assemble them in ways that make sense.
"Harry" then says that both Ed and Bernie are forgetting about "the people who write the programs":
Programming is a human activity. Your programming languages have to be fit for people. That's why Perl is popularit fits people, it does what they expect, it's like a natural language: flexible, comfortable ... human.
Finally, the waiter chips in at the end with:
I couldn't help thinking that you're all wrong. Or all right, if you see what I mean ... People are different. The same person is different at different times. So it's good that programming languages are different. We should be able to move among languages and programming methods, and work with them all creatively.
|