The Lambda Lab
/
projects
/
scheme.forth.jl.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Debugging GC.
[scheme.forth.jl.git]
/
scheme.4th
diff --git
a/scheme.4th
b/scheme.4th
index
3c4744e
..
3c5c6a9
100644
(file)
--- a/
scheme.4th
+++ b/
scheme.4th
@@
-166,18
+166,15
@@
false gc-enabled !
: gc-mark-obj ( obj -- )
: 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
;
: gc-sweep