2 ms·
I hadn't heard of the Perlis quote, so I had to look it up. Source of the Perlis quote: "It isn’t going to do us a bit of good to throw before them [those for
by mcguire 6y ago
I hadn't heard of the Perlis quote, so I had to look it up. Source of the Perlis quote:
"It isn’t going to do us a bit of good to throw before them [those for whom FORTRAN is mother's milk] an APL one-liner that will do as well as 50 lines of FORTRAN. First of all, it will take the people a long time to learn how to use the one-liner and even more to write one, so that FORTRAN will continue to grow and succeed. And I don’t think APL will usurp its position; there’s no reason why it should. And it certainly shouldn’t be a goal of people who use APL to stand forth and say, “Why do you jackasses use these inferior linguistic vehicles when we have something here that’s so precious, so elegant, which gives me so much pleasure? How can you be so blind and so foolish?” That debate you’ll never win, and I don’t think you ought to try."
https://www.jsoftware.com/papers/perlis78.htm https://www.jsoftware.com/papers/perlis78.htm
Yes, folks, Alan Perlis is talking about APL, Greek letters and all.
Another quote from that:
"As a professor, one of the things I’m interested in doing is teaching people how to program; but it’s more than teaching them how to program, because to teach people how to program, any programming language is sufficient. The idea that only one language or any particular language is critical to learning what it means to program is false. If that is your goal, to teach people how to build programs, BASIC is perfectly satisfactory. There are some things you can’t do in it; therefore, you invent constructions for doing them; and the invention of these constructions is learning to program. Sooner or later, in all languages, we have to go to constructions which we build laboriously and arduously out of the components of the language. And we curse the fact that the language doesn’t have them already. But they are not all there now, and they never will be there. The word that I associate with programming — and I’m sure everybody associates with programming — is: “frustration”. Everything is possible, and nothing is easy. We sit down to write a program, and our initial, beautiful thoughts soon get bogged down in the slime of unavailable constructions. And we write procedures, or functions, or what-have-you, and more functions; we invent data structures, and more data structures; and the programs which start out so nice and elegant soon become mired down and have no structure. We find it difficult to describe to anyone else what they do. And we say, “If I programmed differently, if I used, for example, ‘structured programming’ this wouldn’t happen … if I had arrays of arrays this wouldn’t happen … if I had a while-statement this wouldn’t happen …” Nonsense. If it doesn’t happen today, it will happen tomorrow, even with all those things there. Because programming, by its very nature, is a kind of bootstrapping activity. What Iverson and God give you today, you’ll find insufficient tomorrow."
I love Alan Perlis.