On 23-Sep-08, at 2:29 AM, Mikael More wrote:
How do we make (load) never block, undepending of in what thread it is executed?
The problem is that currently the console is being multiplexed between all the threads interacting with the user. There are 2 solutions:
1) Use an IDE (soon to be available) which will give each thread its own independent REPL, so the threads will not race to use the common console.
2) The internal implementation of "load" supports a "quiet?" parameter. So you can use the following definition of "load-quietly" which is just like "load" but does not display the warnings.
(define (load-quietly path) (if (not (string? path)) (error "string expected") (##load path (lambda (script-line script-path) #f) #t #t #t)))
(set! load load-quietly) ;; optional