What branch of the tree is safer?
An essay (very Lisp-oriented) about the past and the future of computer languages on the (very interesting) Paul Graham's website: “The Hundred-Year Language”. Excerpts:
The evolution of languages differs from the evolution of species because branches can converge. (...) In theory this is possible for species too, but it's so unlikely that it has probably never happened.Convergence is more likely for languages partly because the space of possibilities is smaller, and partly because mutations are not random. Language designers deliberately incorporate ideas from other languages.
Saying less about implementation should also make programs more flexible. Specifications change while a program is being written, and this is not only inevitable, but desirable.The word "essay" comes from the French verb "essayer", which means "to try". An essay, in the original sense, is something you write to try to figure something out. This happens in software too. I think some of the best programs were essays, in the sense that the authors didn't know when they started exactly what they were trying to write.
Inefficient software isn't gross. What's gross is a language that makes programmers do needless work. Wasting programmer time is the true inefficiency, not wasting machine time. This will become ever more clear as computers get faster.
Good essay in fact, but I disagree with the baseline of the story: “most of the extra computer power we're given will go to waste”. This sentence do not have to be in the future form, but in the present's one.
Nevermind. To stay or jump on the good branch of the computer languages' tree, think further than the ideas found in this essay. But according to Paul Graham's words, we could conclude that scripting languages will grow more than ever in the future, which is a good thing... So: Perl, Python, Ruby... and now?
(Via Sam Ruby's www.intertwingly.net - “Parallelism Done Right”)
Posted by Jean-Philippe on May 30, 2003 at 07:15 PM 29 Comments, 1050 TrackBacks
Filed in computer science
Post your own.
Comments