diff options
Diffstat (limited to 'scheme/zebra.scm')
| -rw-r--r-- | scheme/zebra.scm | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/scheme/zebra.scm b/scheme/zebra.scm index 9ba0fea..f33eba8 100644 --- a/scheme/zebra.scm +++ b/scheme/zebra.scm @@ -2,6 +2,16 @@ ; Equivalent to example/zebra.adb + +; Place contents of mk.scm from simple-miniKanren here. +; An equivalent microKanren implementation such as from the 2013 paper will also work. + + +; Place contents of mkdefs.scm from simple-miniKanren here. +; Be sure to leave out the (load "mk.scm") line. + + + (define (on-right l r li) (conde ((fresh (z) @@ -44,11 +54,11 @@ (fresh (w x y z) (membero `(,w ,x ,y zebra ,z) h)))) -(define (run-zebra args) - (let* ((s (run 1 (h) (zebra h)))) - (for-each - (lambda (x) - (begin (display x) (newline))) - (car s)))) +; Main program +(let* ((s (run 1 (h) (zebra h)))) + (for-each + (lambda (x) + (begin (display x) (newline))) + (car s))) |
