Aug 4, 2022
#21 Denotational Design - Conal Elliott
In this episode Conal Elliott gives a more concrete presentation on what is Denotational Design is and how to use it in practice. It is a continuation of episode #17, in which we had an in-depth philosophical conversation to explain why he believes that Denotational Design is a superior form of reasoning in the realm of computer science.
We also continue a discussion raised by Dan Ghica on the last episode on the need for Operational Semantics and the role of elegance in reasoning and design.
Along the way we also address the questions sent by the listeners in these last episodes. Links
* Conal’s website
* Play/work with Conal
* Conal’s twitter: @conal
* The simple essence of automatic differentiation
* Compiling to categories
* Generic parallel functional programming
* Denotational design with type class morphisms Quotes
“A theory appears beautiful or elegant […] when it’s simple; in other words when it can be expressed very concisely in terms of mathematics that we’ve already learned for some other reasons.” - Murray Gell-Mann, Beauty and Elegance in Physics.
“In Galileo’s time, professors of philosophy and theology—the subjects were inseparable—produced grand discourses on the nature of reality, the structure of the universe, and the way the world works, all based on sophisticated metaphysical arguments. Meanwhile, Galileo measured how fast balls roll down inclined planes. How mundane! But the learned discourses, while grand, were vague. Galileo’s investigations were clear and precise. The old metaphysics never progressed, while Galileo’s work bore abundant, and at length spectacular, fruit. Galileo too cared about the big questions, but he realized that getting genuine answers requires patience and humility before the facts.” - Frank Wilczek, (The Lightness of Being: Mass, Ether, and the Unification of Forces)
“We must make here a clear distinction between belief and faith, because, in general practice, belief has come to mean a state of mind which is almost the opposite of faith. Belief, as I use the word here, is the insistence that the truth is what one would ‘lief’ or wish it to be. The believer will open his mind to the truth on the condition that it fits in with his preconceived ideas and wishes. Faith, on the other hand, is an unreserved opening of the mind to the truth, whatever it may turn out to be. Faith has no preconceptions; it is a plunge into the unknown. Belief clings, but faith lets go. In this sense of the word, faith is the essential virtue of science, and likewise of any religion that is not self-deception.” - Alan Watts (The Wisdom of Insecurity: A Message for an Age of Anxiety)