diff --git a/maze-get-set-root.scm b/maze-get-set-root.scm deleted file mode 100644 index 2538b532..00000000 --- a/maze-get-set-root.scm +++ /dev/null @@ -1,26 +0,0 @@ -;;; MAZE -- Constructs a maze on a hexagonal grid, written by Olin Shivers. - -(import (scheme base) (scheme read) (scheme write) (scheme time)) - -(define (get-set-root s) - (let lp ((r s));; Find the last pair - (let ((next (cdr r)));; in the list. That's - (cond ((pair? next) (lp next));; the root r. - - (else - (if (not (eq? r s));; Now zip down the list again, - (let lp ((x s));; changing everyone's cdr to r. - (let ((next (cdr x))) - (cond ((not (eq? r next)) - (set-cdr! x r) - (lp next)))))) - r)))));; Then return r. - -(write - (get-set-root '( - (a . 1) - (b . 2) - (c . 3) - (d . 4) - (e . 5) - )))