

Hints on programming language design (C.A.R Hoare) - ahalan
http://www.eecs.berkeley.edu/~necula/cs263/handouts/hoarehints.pdf

======
jackcviers
I disagree that the paper is obsolete. References and pointers abound in
nearly every popular modern programming language [C, C++, Java, C#, PHP,
Python, Ruby, EcmaScript, etc.] and in fact are the defining feature of all OO
languages. Operator overloading is only possible in a small fraction of
popular modern programming languages. Fast compilation is not even a focus of
most popular modern programming languages. Type inference and automatic
coercion, declaration, and defaults are in vogue in most programming
languages. Also, programming languages are increasingly large and complex.
Compiler optimization is likewise a hot-spot topic, as are gotos/jumping and
global and out of block variable definitions.

It would seem to me that if his hints and assumptions are correct that
language designers may have inhibited the growth of programming; though a
programmer that knows her/his language of choice can and does take advantage
of all of the inefficiencies described in this paper.

I'm really beginning to realize that the functional languages probably have it
right: single value assignment; recursive function execution; compact,
readable code; monads; guards; readable case statements; and narrow interfaces
seem to satisfy a lot of what he recommends. Most OO languages definitely do
not, although I love the expressiveness I have learned to achieve by
exploiting their nuances.

------
vajrabum
This paper is mostly obsolete but contains this wonderful and famous comment
on Algol 60: Here is a language so far ahead of its time, that it was not only
an improvement on its predecessors, but also on nearly all its successors.

~~~
nickik
Of all the languages at the time only LISP was better, Algol 60 was probebly
more practical. (John McCarthy was working on Algol too)

------
eddington
Previously, 2 points...

<http://news.ycombinator.com/item?id=3207255>

~~~
tikhonj
That's all to do with the headline. Purely psychologically, I wouldn't care
about a CS paper from 1973 ( _decades_ before I was even born) regardless of
its quality or pertinence. On the other hand, something written by a famous
computer scientist attracted my attention immediately.

