(import (scheme base)
        (scheme time)
        (scheme write))

(define (time f)
  (let ((start (current-jiffy)))
    (f)
    (inexact
     (/ (- (current-jiffy) start)
        (jiffies-per-second)))))

(define (tak x y z)
  (if (> x y)
      (tak (tak (- x 1) y z)
	   (tak (- y 1) z x)
	   (tak (- z 1) x y))
      y))

(define (f)
  (tak 12 6 0))

(write-simple (time f))
(newline)

; 70fb34 -> 10.374959
; fb6679 ->  4.275342