From 13e038552e84df8c480b101b09e4c5a650bad2d0 Mon Sep 17 00:00:00 2001 From: Tim Vaughan Date: Sun, 23 Oct 2016 16:16:36 +1300 Subject: [PATCH] Debugging GC. --- scheme.4th | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/scheme.4th b/scheme.4th index 3c4744e..3c5c6a9 100644 --- a/scheme.4th +++ b/scheme.4th @@ -166,18 +166,15 @@ false gc-enabled ! : gc-mark-obj ( obj -- ) - pairlike? if - pairlike-marked? if 2drop exit then - - mark-pairlike + pairlike? invert if 2drop exit then + pairlike-marked? if 2drop exit then - 2dup + mark-pairlike - car recurse - cdr recurse - else - 2drop - then + drop pair-type 2dup + + car recurse + cdr recurse ; : gc-sweep -- 2.20.1