Posted by jjwiseman at June 04, 2004 11:13 AM
ORN: In my experience, there seems to be two different philosophies guiding language design these days. One philosophy comes from mathematicians. You'll find these languages exploring static-type systems, formal provability, and the like (though not all at once). Another philosophy approaches programming from the human level, saying that things can be messy, compilers can be complex, and even, in some cases, that it's better to emulate natural languages than to pursue purity and extreme simplicity.
Would you classify yourself as sympathizing with the mathemeticians or the humanists?
PG: I think there is a middle path. It's good for languages to be inspired by math, but they have to be inspired in the right way by it. What language designers don't seem to realize is that mathematicians do two things. They prove theorems, but they also invent notation. It's the second aspect of math that language designers ought to be looking at. They should be asking not “How can I prove theorems about programs?” but “How can I invent something as fertile as place-value (i.e. ‘arabic’) notation?”