Get the latest tech news

Writing a Truth Oracle in Lisp


ost assumes some familiarity with typed functional programming, Lisp, and formal logic. Today we will attempt to write a truth oracle in Lisp.

The core idea is that formal logic proofs can be thought of as expressions in a typed functional programming language, and vice versa. These types are typically used for expressions that don’t return normally, such as infinite loops, thrown exceptions, or fatal errors. So instead it hides a time machine inside the value, and rigs it to activate, as a fail-safe mechanism, whenever code tries to use it to do something that would disastrously break the programming language.

Get the Android app

Or read this on Hacker News

Read more on:

Photo of Lisp

Lisp

Photo of truth oracle

truth oracle

Related news:

News photo

The Lisp in the Cellar: Dependent types that live upstairs [pdf]

News photo

On Lisp (1993)

News photo

Why I Program in Lisp