|
From: Ken A. <kan...@bb...> - 2002-08-13 00:59:08
|
Rusty an i have been data mining with lists of 35,000 items.
Things work reasonably OK as long as you don't print them as a list to
EMACS without any line breaks. I usually kill my Jscheme at that point and
start over.
I've truncated error messages to 1000 characters which helps a lot with
reporting bugs. Perhaps we should have parameter that effects the REPL, to
help reduce the cost of accidents. Common Lisp had several, such as
print-length and print-level, but one might work for us, were small.
We have one example of using {} to generate a web page, with at least a
1300 row x 5 columns x 3 string
> 19,500 Jscheme frames - leads to a stack overflow. This seems pretty
tiny, but
the simple experiement:
(define (grow n)
(if (= n 0) '()
(cons n (grow (- n 1)))))
(define (size n)
(print n)
(grow n)
(size (+ n n)))
(size 1)
produces:
> 1
2
4
8
16
32
64
128
256
512
1024
2048
An unrecoverable stack overflow has occurred.
We were able to rewrite the page in a dumb string-consing accumulator style
and get the result we wanted.
Is there an alternative way we can write !{}?
k
|