PS. see also the -:da flag of the Gambit system. Maybe it's enough if you somehow start up your remote nodes with that flag. $ gsi -:da Gambit v4.0.1
(define t (thread-start! (make-thread (lambda() (error "hello") (+ 3 4))))) (thread-join! t) ------------- REPL is now in #<thread #2> ------------- *** ERROR IN #<procedure #3>, (console)@1.49 -- hello ,b 0 #<procedure #3> (console)@1:49 (error "hello") 1 ##thread-start-action! ,y 0 #<procedure #3> (console)@1.49 (error "hello") ,(c 3) 7 ------------- REPL is now in #<thread #1 primordial> -------------
*** EOF again to exit $ gsi Gambit v4.0.1
(define t (thread-start! (make-thread (lambda() (error "hello") (+ 3 4))))) (thread-join! t) *** ERROR IN (console)@2.1 -- Uncaught exception: #<error-exception #2> (thread-join! '#<thread #3>) 1>