3 ms·
Really? He is saying that Dijkstra's own book Predicate Calculus and Program Semantics ("D&S") suffered because "in general computer people seem to have a pench
by pjungwir 8y ago
Really? He is saying that Dijkstra's own book Predicate Calculus and Program Semantics ("D&S") suffered because "in general computer people seem to have a penchant for whipping up homebrew logics," and Codd is another example. Anyway if he were giving Dijkstra's opinion that makes the lack of citation even more egregious.
But anyway the "who" is boring. I'm more interested to know what makes relational calculus an "obvious mess"?
- AnimalMuppet 8y agoAh, you are correct, and my (GP) post deserves more downvotes than it got. As to your question: I don't know. I don't really understand the formal definition of all the terms in play. But it sounds like maybe he wants relational calculus to be just a formal logic, whereas it might be something more (an algebra, or even a "calculus", though I don't really understand what makes something a calculus in these areas).
- pjungwir 8y agoNone of the downvotes were mine btw. :-) He praises Prolog because it was influenced by a logician, so I'm curious what he thinks of Datalog. That is something on my radar to read about, but so far I know nothing about it. But I believe it is something like "Prolog for databases." I know Datomic uses it, but it has a long history. Personally I think relational theory is one of the greatest success stories in all Computer Science, but that doesn't mean it is problem-free. I'd be happy to hear more about its shortcomings, especially as a formal logic. Anyway, thanks for the conversation! :-)
- AnimalMuppet 8y agoRelational could be non-problem-free from a formal logic perspective and still be perfectly fine for programming. I think that the article was written, if not from EWD's viewpoint, at least with some of his perspective, that programming should be a formal (and formally verified) process, and any deviation from that is rebuked in scathing terms, no matter how pragmatically useful it is. I think that viewpoint is quite short-sighted. Things can be formally flawed (by some standard), and still be perfectly pragmatically useful in a wide variety of situations.