miniKanren is a small logic programming language which aims to be a
light-weight and purely declarative alternative to Prolog. The main
field of application for miniKanren is “relational programming” —
the technique of writing programs as mathematical relations rather
than mathematical functions. Programs written in this way have a few
interesting features, such as an ability to be “run backwards”
(synthesize arguments from the result).
In the first part of the talk, I am going to give a short overview of the language. We will discuss its advantages and disadvantages, look at some simple examples of programs in miniKanren as well as state-of-the-art applications of relational programming. In the second part of the talk, I will describe the project I am currently involved in: providing formal semantics — rigorous mathematical description — to miniKanren programs and using it to prove some properties of program execution in the language.
Host: Katya Komendantskaya Host: web pages