Blame


1 665c255d 2023-08-04 jrmu (define (gcd a b)
2 665c255d 2023-08-04 jrmu (if (= b 0)
3 665c255d 2023-08-04 jrmu a
4 665c255d 2023-08-04 jrmu (gcd b (remainder a b))))
5 665c255d 2023-08-04 jrmu
6 665c255d 2023-08-04 jrmu (gcd 206 40)
7 665c255d 2023-08-04 jrmu (gcd 40 (remainder 206 40))
8 665c255d 2023-08-04 jrmu evaluate remainder once
9 665c255d 2023-08-04 jrmu (gcd (remainder 206 40) (remainder 40 (remainder 206 40)))
10 665c255d 2023-08-04 jrmu evaluate remainder three times
11 665c255d 2023-08-04 jrmu (gcd (remainder 40 (remainder 206 40)) (remainder (remainder 206 40) (remainder 40 (remainder 206 40))))
12 665c255d 2023-08-04 jrmu evaluate remainder 7 times
13 665c255d 2023-08-04 jrmu (gcd (remainder (remainder 206 40) (remainder 40 (remainder 206 40))) (remainder (remainder 40 (remainder 206 40)) (remainder (remainder 206 40) (remainder 40 (remainder 206 40)))))
14 665c255d 2023-08-04 jrmu evaluate remainder 14 times
15 665c255d 2023-08-04 jrmu (remainder (remainder 206 40) (remainder 40 (remainder 206 40)))
16 665c255d 2023-08-04 jrmu (remainder 6 (remainder 40 (remainder 206 40)))
17 665c255d 2023-08-04 jrmu (remainder 6 (remainder 40 (remainder 206 40))) ;; 15 times
18 665c255d 2023-08-04 jrmu (remainder 6 (remainder 40 6)) ;; 16 times
19 665c255d 2023-08-04 jrmu (remainder 6 4) ;; 17 times
20 665c255d 2023-08-04 jrmu 2 ;; 18 times
21 665c255d 2023-08-04 jrmu
22 665c255d 2023-08-04 jrmu 18 remainder operations are performed in normal order, whereas only 4 are performed in normal-order