picrin/t/tail-call.scm

14 lines
210 B
Scheme

(import (scheme base))
;;; always returns zero
(define (zero n)
(if (zero? n)
0
(zero (- n 1))))
;;; using apply
(define (zero-2 n)
(if (zero? n)
0
(apply zero-2 (list (- n 1)))))