Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
;; $Id: define.tst,v 1.7 2006/10/23 20:44:08 leavens Exp leavens $
(newline)
(displayln "Test case $RCSfile: define.tst,v $ of $Date: 2006/10/23 20:44:08 $")
(newline)
;; Make sure the program returns a Scheme value
(displayln
"Check that the following is a closure, not (procval->expressed (closure...))")
(run-test-case
'(run "define fact(x) = if zero?(x) then 1 else *(x, (fact sub1(x)))
fact"))
(run-regression-tests-equal?
`(
( (run "3")
==> 3)
( (run "define fact(x) = if zero?(x) then 1 else *(x, (fact sub1(x)))
(fact 4)")
==> 24 )
( (run "define fact1(x) = if zero?(x) then 1 else *(x, (fact2 sub1(x)))
define fact2(x) = if zero?(x) then 1 else *(x, (fact1 sub1(x)))
(fact1 6)")
==> 720 )
( (run "define times4 (x) = if x then +(4, (times4 -(x,1))) else 0
(times4 3)")
==> 12 )
( (run "define odd?(x) = if zero?(x) then (false) else (even? sub1(x))
define even?(x) = if zero?(x) then (true) else (odd? sub1(x))
define true() = 1
define false() = 0
+((even? 4), (odd? 31))")
==> 2 )
)
)