Ever since reading this essay 14 years ago (has it really been that long?!) I have always thought:<p>Haskell. He's talking about something like Haskell - but with whatever additional powers of abstraction and simplification mankind manages to dream up.<p>I say this, because I have yet to find such an elegant way of expressing computation. But, on the other hand, I have yet to find a "serious" language with as many performance land-mines, which possibly might just <i>not matter</i> given orders of magnitude more memory and computing power.<p>Given a couple of orders of magnitude, who cares that String = [Char]. It's damned elegant.<p>For everything else, I'll bet we will use the "C" of the 21st century - Rust :-)<p>JavaScript will probably continue tracking functional languages like Haskell for many years, albeit remaining without the type system that make them truly useful.<p><i></i>Thank you for re-posting this long-forgotten essay, and taking me down memory lane...<i></i>
There is a fundamental change in language coming. I believe that within 5 years the latest crop of programmers will begin to write PROVEN functional programs. Program proof technology has taken a giant leap in the last few years. These new techniques are starting to show up at Universities. Those graduates will know how to prove programs and, after the old programmers like myself die off, will simply expect that proofs are normal and required.
"Beating the Averages" is also a good read.<p>I read these essays for the first time a some years ago at a time when I was being assigned to a Javascript project and, much to my own surprise, had gone from ridiculing the language to secretly kind of liking it. At the time I had been working with Java for 10+ years and Javascript had always been regarded as this inbred cousin from Kansas that you didn't really want to be seen in company with.<p>Anyway, reading Graham's essays on computer languages helped me understand that Javascript was actually one rung up the abstractness ladder compared to Java, and that the language that I had always considered to be limited was instead extremely flexible and hence, stronger.<p>BTW, a curious thing about Graham is that he measures the strength of a language by how many features it shares with Lisp. Hence, no language will ever surpass Lisp using that yardstick.
Please don't use article titles to editorialize. From <a href="https://news.ycombinator.com/newsguidelines.html" rel="nofollow">https://news.ycombinator.com/newsguidelines.html</a>:<p><i>Please don't do things to make titles stand out, like [...] adding a parenthetical remark saying how great an article is. It's implicit in submitting something that you think it's important.</i>