define
fibfast n
if (< n 2)
. n
fibup n 2 1 0
define
fibup maxnum count n-1 n-2
if (= maxnum count)
+ n-1 n-2
fibup maxnum
+ count 1
+ n-1 n-2
. n-1
define (factorial n)
if (<= n 1)
. 1
* n
factorial (- n 1)
define (gcd x y)
if (= y 0)
. x
gcd y
rem x y
define (add-if-all-numbers lst)
call/cc
lambda (exit)
let loop
:
lst lst
sum 0
if (null? lst)
. sum
if
not
number?
car lst
exit #f
+ (car lst)
loop (cdr lst)