Felix introduces the podcast and briefly explains what logic programming is.
Logic Programming, you say? That might sound like either an oxymoron or a tautology to you, depending on who you are. If you have heard about Logic Programming before, you are probably thinking about Prolog - a programming language that is almost 50 years old, and which many find fascinating but also frustratingly limited.

What is logic? Many people consider it synonymous with dry intellect, humorless bureaucracy, the opposite of creativity. But in my understanding, logic is an attempt to capture the essence of thought, which is to say the essence of what we humans find reasonable, persuasive, and possible. The study of logic goes straight to some of our fundamental intuitions about the world and ourselves, and it's really not clear at all what they are rooted in. People have lots of different opinions about this. Logic looks very clear-cut on the surface, but when you dig you bump into some of the deepest perennial questions in philosophy. And this doesn't change when we arrive at modern, formalized logic, which sort of looks like mathematics - you are still dealing with deep questions about human psychology and cognition, and how we perceive the physical world.

Now, it turns out formal logic can be used as a programming language. If you are careful about which parts of logic you use, and in which form you write things down, formal logic fits very well with how programming languages are executed. So you can write down some logical formulas, and you get two interpretations: the logical interpretation, and the procedural interpretation which is how you run it on a computer. And these two are, let's say, in sync - you get the deductions you would expect from both interpretations.

As a programming paradigm, this has some really unusual and fun features, and since logic in the first place is, again, an attempt to capture the essence of human though, Logic Programming is in many respects very intuitive. To me, it's the closest to what I imagined programming would be like when I was 10 and had just started to understand that there was a way to tell computers what to do.

★ Support this podcast ★
© Holmgren Interstellar, 2020