3 ms·
Computers don't run languages though, they run code. And readability of the language for humans is a communication problem - there is no way around it. That's a
by shmerl 7y ago
Computers don't run languages though, they run code. And readability of the language for humans is a communication problem - there is no way around it. That's a different topic from using a language to communicate with the computer itself.
- the_af 7y agoAre you debating this with me or with Dijkstra? I didn't make up that aphorism myself. There is very much a design contradiction between "this language should make things easier for the computer (or compiler, or whatnot)" and "this language should be easy to read for humans, even if this makes it worse for the computer". This is widely acknowledged and not the point of contention; whether the former or the latter is more important is.
- shmerl 7y agoI was just commenting on your remark. I think Dijkstra was picking on the "language to communicate with computers" topic, not on language as a tool of communication between people. I mean, readability of any language for humans is an issue, but I'm not sure what readability for computers means exactly in this context. How easy it is to make an optimizing compiler? Modern languages use zero cost abstractions approach to improve readability for humans, while targeting well optimized code.
- the_af 7y agoVery possibly I misunderstand both you and Dijkstra. What else could he be referring to when he claims "[the name of 'programming languages'] invited the psychologists in, who had nothing to contribute, and it seriously delayed the recognition of the benefits of viewing programs as formulae to be derived."? The fact he specifically picks on COBOL -- exclusively formulated to communicate well to humans, not computers -- seems to favor my interpretation. I could be mistaken, of course. He does speak of "anthropomorphizing inanimate objects", which does favor your interpretation. Or maybe it's mixed?
- shmerl 7y agoMay be I misunderstood him, but his focus on "Giant Brains or Machines that Think" and “The Education of a Computer” sounds like the topic of languages as a tool of communication with computers. I didn't understand the focus as being better communication between programmers.
- the_af 7y agoHmm, I think you're right!