diff --git a/books/bookvol5.pamphlet b/books/bookvol5.pamphlet index 6d941bb..9292480 100644 --- a/books/bookvol5.pamphlet +++ b/books/bookvol5.pamphlet @@ -1410,33 +1410,22 @@ carrier[lines,messages,..]-> carrier[lines,messages,..] \defun{streamChop}{streamChop} <>= -(DEFUN |streamChop| (|n| |s|) - (PROG (|d| |c| |line| |b| |a| |LETTMP#1|) - (RETURN - (COND - ((|StreamNull| |s|) (LIST NIL NIL)) - ((EQL |n| 0) (LIST NIL |s|)) - ('T (SETQ |LETTMP#1| (|streamChop| (- |n| 1) (CDR |s|))) - (SETQ |a| (CAR |LETTMP#1|)) (SETQ |b| (CADR |LETTMP#1|)) - (SETQ |line| (CAR |s|)) - (SETQ |c| (|ncloopPrefix?| ")command" (CDR |line|))) - (SETQ |d| - (CONS (CAR |line|) (COND (|c| |c|) ('T (CDR |line|))))) - (LIST (CONS |d| |a|) |b|)))))) -;(defun |streamChop| (n s) -; (prog (d c line b a t1) -; (return -; (cond -; ((|StreamNull| s) (list nil nil)) -; ((eql n 0) (list nil s)) -; (t -; (setq t1 (|streamChop| (- n 1) (cdr s))) -; (setq a (car t1)) -; (setq b (cadr t1)) -; (setq line (car s)) -; (setq c (|ncloopPrefix?| ")command" (cdr line))) -; (setq d (cons (car line) (cond (c c) (t (cdr line))))) -; (list (cons d a) b)))))) +Note that changing the name ``lyne'' to ``line'' will break the system. +I do not know why. The symptom shows up when there is a file with a large +contiguous comment spanning enough lines to overflow the stack. +(defun |streamChop| (n s) + (let (d c lyne b a tmp1) + (cond + ((|StreamNull| s) (list nil nil)) + ((eql n 0) (list nil s)) + (t + (setq tmp1 (|streamChop| (- n 1) (cdr s))) + (setq a (car tmp1)) + (setq b (cadr tmp1)) + (setq lyne (car s)) + (setq c (|ncloopPrefix?| ")command" (cdr lyne))) + (setq d (cons (car lyne) (cond (c c) (t (cdr lyne))))) + (list (cons d a) b))))) @ diff --git a/changelog b/changelog index d1b6f15..03725cc 100644 --- a/changelog +++ b/changelog @@ -1,3 +1,5 @@ +20091024 tpd src/axiom-website/patches.html 20091024.01.tpd.patch +20091024 tpd books/bookvol5 fix streamChop line/lyne breakage 20091023 tpd src/axiom-website/patches.html 20091023.02.tpd.patch 20091023 tpd books/bookvol5 merge int-top.lisp 20091023 tpd src/interp/int-top.lisp removed, merged with bookvol5 diff --git a/src/axiom-website/patches.html b/src/axiom-website/patches.html index 6c1d59a..23d4a94 100644 --- a/src/axiom-website/patches.html +++ b/src/axiom-website/patches.html @@ -2167,5 +2167,7 @@ src/boot directory and files deleted
src/input/dop.input fix up commented-out commands
20091023.02.tpd.patch books/bookvol5 merge and delete int-top.lisp
+20091024.01.tpd.patch +books/bookvol5 fix streamChop line/lyne breakage