-- Programmed by Jedidiah Barber -- Licensed under the Sunset License v1.0 -- See license.txt for further details with Ada.Text_IO, Kompsos.Pretty_Print; procedure AB is package TIO renames Ada.Text_IO; package InKomp is new Kompsos (Integer); use InKomp; package InPrin is new InKomp.Pretty_Print (Integer'Image); use InPrin; Relation : Goal := Empty_Goal; Item : Term; begin TIO.Put_Line ("Test program to output a-and-b example from 2013 microKanren paper."); TIO.New_Line; Item := Relation.Fresh ("a"); Relation.Unify (Item, 7); Item := Relation.Fresh ("b"); Relation := Disjunct (Relation.Unify (Item, 5), Relation.Unify (Item, 6)); TIO.Put_Line (Image (Relation)); end AB;