Files
lysp/examples/loops.lysp
T

41 lines
588 B
Plaintext

;; loop, broken by (return)
(setq
looped-loop
(let (i 0)
(loop
(if (< i 10)
(setq i (+ i 1))
(break)
)
)
i
)
)
;; while, broken prematurely
(setq
looped-while
(let (i 0)
(while (< i 20)
(setq i (+ i 1))
(if (= i 10) (break))
)
i
)
)
;; while, broken by condition
(setq
looped-while-full
(let (i 0)
(while (< i 10)
(setq i (+ i 1))
)
i
)
)
;; All loops execute the same count of times
(assert (= looped-loop looped-while looped-while-full))
(print "Test succeeded")