···11import whisp from './whisp';
2233-whisp`(write "running Whisp\n")`;
44-53whisp`
66-(do
77-(let n 30)
88- (if (<= n 1) n
99- (do
1010- (let a 0)
1111- (let b 1)
1212- (let i 2)
1313- (let temp 0)
1414- (loop (<= i n)
1515- (do
1616- (let temp (+ a b))
1717- (let a b)
1818- (let b temp)
1919- (let i (+ i 1))))
2020- (write "fib(30): " b "\n"))))
44+(fn fib n a b
55+ (if (= n 0) a
66+ (fib (- n 1) b (+ a b))))
77+88+(let start (performance.now))
99+(let result (fib 30 0 1))
1010+(let end (performance.now))
1111+(let elapsed (- end start))
1212+1313+(write "fibonacci(30) = " result "\n")
1414+(write "Time: " (. elapsed toFixed 4) " ms (" (. (* elapsed 1000) toFixed 2) " ยตs)\n"))
2115`;