From 8bc092cdeb9d5b0417a9c773e5a5debe3637a5bb Mon Sep 17 00:00:00 2001 From: Nathan Braswell Date: Sat, 14 May 2022 01:46:53 -0400 Subject: [PATCH] GAH the matching.kp was using the old broken Y combinator, fixing it makes it work. We're, uh, 682x slower than Koka --- rb_tree_test/matching.kp | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/rb_tree_test/matching.kp b/rb_tree_test/matching.kp index 1ce7f6f..84483ef 100644 --- a/rb_tree_test/matching.kp +++ b/rb_tree_test/matching.kp @@ -5,7 +5,7 @@ (let1 cons (lambda (h t) (concat (array h) t)) (let1 Y (lambda (f3) ((lambda (x1) (x1 x1)) - (lambda (x2) (f3 (lambda (& y) (lapply (x2 x2) y)))))) + (lambda (x2) (f3 (wrap (vau app_env (& y) (lapply (x2 x2) y app_env))))))) (let1 vY (lambda (f) ((lambda (x3) (x3 x3)) (lambda (x4) (f (vau de1 (& y) (vapply (x4 x4) y de1)))))) @@ -290,16 +290,15 @@ - make-test-tree (rec-lambda make-test-tree (n t) (if (<= n 0) t - (make-test-tree (- n 1) (map-insert t n (= 0 (% n 10)))))) + make-test-tree (rec-lambda make-test-tree (n t) (cond (<= n 0) t + true (make-test-tree (- n 1) (map-insert t n (= 0 (% n 10)))))) reduce-test-tree (lambda (tree) (generic-foldl (lambda (a x) (if (idx x 1) (+ a 1) a)) 0 tree)) monad (array 'write 1 (str "running tree test") (vau (written code) - ;(array 'exit (log (reduce-test-tree (make-test-tree (log 100) map-empty)))) - (array 'read 0 60 (vau (data code) - (array 'exit (log (reduce-test-tree (make-test-tree (read-string data) map-empty)))) - )) - + (array 'exit (log (reduce-test-tree (make-test-tree (log 420000) map-empty)))) + ;(array 'read 0 60 (vau (data code) + ; (array 'exit (log (reduce-test-tree (make-test-tree (read-string data) map-empty)))) + ;)) )) ) monad)