(use srfi-18) #> static double clock_d() { return clock() / (double)CLOCKS_PER_SEC; } static void draw() { double t = clock_d(); int i; while ((clock_d() - t) < .033) i++; } <# (define draw (foreign-lambda void "draw")) (use srfi-18) (define (a) (draw) (print "A:" (current-seconds)) (a)) (define (b) (print "B:" (current-seconds)) (b)) (thread-start! (make-thread b "B")) (a)