On this page:
1.1 Target Audience
1.2 Overview

1 Introduction

The aim of this tutorial is to demonstrate how to implement miniKanren with constraints in an incremental fashion.

1.1 Target Audience

The reader is assumed to be familiar with programming in Scheme (in particular, syntax-rules style macros) & miniKanren, but no former expereince with implementing miniKanren interpreters is required. Experience with implementing interpreters is useful, but not a hard prerequisite.

1.2 Overview

In this tutorial the logic operators we implement are:
  1. ==

  2. fresh

  3. conj

  4. disj

  5. =/=