diff options
| author | Jedidiah Barber <contact@jedbarber.id.au> | 2026-02-14 22:46:03 +1300 |
|---|---|---|
| committer | Jedidiah Barber <contact@jedbarber.id.au> | 2026-02-14 22:46:03 +1300 |
| commit | bcb7a1156252da6cd16b7d3505e3f5b686a5669f (patch) | |
| tree | 6ec75590b6fc71a08fc873430e1a82020e6bc801 /scheme/logo.scm | |
| parent | b23d73cfa76919a726558e51bf0b0f0cc7c1575e (diff) | |
Changed Scheme benchmark tests to need manual code copy/paste from miniKanren for better performance comparisonsHEADmaster
Diffstat (limited to 'scheme/logo.scm')
| -rw-r--r-- | scheme/logo.scm | 52 |
1 files changed, 31 insertions, 21 deletions
diff --git a/scheme/logo.scm b/scheme/logo.scm index 18fc9ed..fee72f7 100644 --- a/scheme/logo.scm +++ b/scheme/logo.scm @@ -2,6 +2,16 @@ ; Equivalent to test/logo.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 (value bin) (cond ((null? bin) 0) @@ -24,26 +34,26 @@ (newline))))) -(define (run-logo args) - (begin - (display "Logarithm") - (newline) - (test 1 1) - (test 68 2) - (test 68 3) - (test 68 4) - (test 68 5) - (test 68 6) - (test 68 7) - (test 68 8) - (newline) - (display "Expected Failure") - (newline) - (display (run 1 (d) (fresh (q r) (== d `(,q ,r)) (logo 68 1 q r)))) - (newline) - (display (run 1 (d) (fresh (q r) (== d `(,q ,r)) (logo 68 0 q r)))) - (newline) - (display (run 1 (d) (fresh (q r) (== d `(,q ,r)) (logo 0 0 q r)))) - (newline))) +; Main program +(begin + (display "Logarithm") + (newline) + (test 1 1) + (test 68 2) + (test 68 3) + (test 68 4) + (test 68 5) + (test 68 6) + (test 68 7) + (test 68 8) + (newline) + (display "Expected Failure") + (newline) + (display (run 1 (d) (fresh (q r) (== d `(,q ,r)) (logo 68 1 q r)))) + (newline) + (display (run 1 (d) (fresh (q r) (== d `(,q ,r)) (logo 68 0 q r)))) + (newline) + (display (run 1 (d) (fresh (q r) (== d `(,q ,r)) (logo 0 0 q r)))) + (newline)) |
