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 |