Abstract
After one learns to program in miniKanren, it is natural to want to understand how it is implemented. However, there is no resource to learn how to implement miniKanren with constraints such as =/=, symbolo, numbero, and absento. Furthermore, these are used to implement a wide class of interesting programs such as relational interpreters and relational type inferencers, making the need for such a resource all the more felt. This paper aims to be that resource. Additional Key Words and Phrases: miniKanren implementation, Racket, relational programming