Test output for pseudolists [ok]

Testing time: 1s

'/usr/home/chicken/salmonella/build/salmonella-run-publish/chicken/bin/csi' -script run.scm < /dev/null 2>&1

Testing PSEUDOLISTS ...
----------------------------
(pl? "x")
... passed in (pseudolists?)
(pl? '(a b . c))
... passed in (pseudolists?)
(pl-null? 5)
... passed in (pseudolists?)
((pl-of?) "x")
... passed in (pseudolists?)
((pl-of? symbol?) '(a b . c))
... passed in (pseudolists?)
(equal? (pl-maker #f 1 2 3 4) '(1 2 3 4 . #f))
... passed in (pseudolists?)
(equal? (pl-maker #f 0 1 2 3) '(0 1 2 3 . #f))
... passed in (pseudolists?)
(equal? (pl-maker '() 0 1 2 3) '(0 1 2 3))
... passed in (pseudolists?)
(equal? (pl-iterate #f 5 add1 0) '(0 1 2 3 4 . #f))
... passed in (pseudolists?)
(not (pl-sentinel (pl-maker #f 1 2 3 4)))
... passed in (pseudolists?)
(= (pl-sentinel '(0 1 2 3 2 . 2)) 2)
... passed in (pseudolists?)
(not (pl-sentinel '(0 1 2 3 . #f)))
... passed in (pseudolists?)
(= (pl-length '(0 1 2 3 . 4)) 4)
... passed in (pseudolists?)
(equal? (pl-head '(0 1 2 3 2 . 2)) '(0 1 2 3 2))
... passed in (pseudolists?)
(equal? (pl-head 0) '())
... passed in (pseudolists?)
(equal? (pl-head '(0 . 1)) '(0))
... passed in (pseudolists?)
(= (pl-at 1 '(0 1 2 3 . 4)) 1)
... passed in (pseudolists?)
(= (pl-at 2 '(0 1 2 3 . #f)) 2)
... passed in (pseudolists?)
(not (condition-case (pl-at 0 1) ((exn) #f)))
... passed in (pseudolists?)
(= (pl-index odd? '(0 1 2 . 3)) 1)
... passed in (pseudolists?)
(= (pl-index odd? '(0 2 4 . 1)) -1)
... passed in (pseudolists?)
(equal? (pl-drop 1 '(0 1 2 3 . 4)) '(1 2 3 . 4))
... passed in (pseudolists?)
(= (pl-drop 0 1) 1)
... passed in (pseudolists?)
(equal? (pl-drop 2 '(0 1 2 3 . #f)) '(2 3 . #f))
... passed in (pseudolists?)
(equal? (pl-drop-while odd? '(1 3 2 4 . #f)) '(2 4 . #f))
... passed in (pseudolists?)
(equal? (pl-drop-while negative? '(1 3 2 4 . #f)) '(1 3 2 4 . #f))
... passed in (pseudolists?)
(equal? (pl-take 3 '(0 1 2 3 4 . #t)) '(0 1 2 . #t))
... passed in (pseudolists?)
(equal? (pl-take 2 '(0 1 2 3 . #f)) '(0 1 . #f))
... passed in (pseudolists?)
(equal? (pl-take-while odd? '(1 3 2 4 . #f)) '(1 3 . #f))
... passed in (pseudolists?)
(not (pl-take-while negative? '(1 3 2 4 . #f)))
... passed in (pseudolists?)
(= (pl-filter odd? 1) 1)
... passed in (pseudolists?)
(equal? (pl-filter odd? '(0 1 2 3 4)) '(1 3))
... passed in (pseudolists?)
(equal? (pl-filter odd? '(0 1 2 3 . 4)) '(1 3 . 4))
... passed in (pseudolists?)
(equal? (pl-map add1 '(0 1 2 3 . 4)) '(1 2 3 4 . 4))
... passed in (pseudolists?)
(not (pl-map add1 #f))
... passed in (pseudolists?)
(equal? (pl-reverse '(0 1 2 3 . 4)) '(3 2 1 0 . 4))
... passed in (pseudolists?)
(equal? (pl-reverse '(0 1 2 3)) '(3 2 1 0))
... passed in (pseudolists?)
(equal? (pl-append '(0 1) '(2 3) #f) '(0 1 2 3 . #f))
... passed in (pseudolists?)
(equal? (pl-append '(0 1 . #f) '(2 3)) '(0 1 2 3))
... passed in (pseudolists?)
(equal? (pl-append '(0 1) '(2 3) '(4 5)) '(0 1 2 3 4 5))
... passed in (pseudolists?)
(= (pl-fold-right + 0 '(1 2 3 . #f)) 6)
... passed in (pseudolists?)
(= (pl-fold-left + 0 '(1 2 3)) 6)
... passed in (pseudolists?)
(equal? (pl-adjoin 2 '(0 1 2 3 . #f)) '(0 1 2 3 . #f))
... passed in (pseudolists?)
(equal? (pl-adjoin 4 '(0 1 2 3 #f)) '(4 0 1 2 3 #f))
... passed in (pseudolists?)
(equal? (pl-adjoin 1 '(0 1 2 3)) '(0 1 2 3))
... passed in (pseudolists?)
(equal? (pl-adjoin 1 '()) '(1))
... passed in (pseudolists?)
(equal? (pl-remove-dups '(0 1 2 3 2 . 2)) '(0 1 3 2 . 2))
... passed in (pseudolists?)
(equal? (pl-remove-dups '(0 1 2 3 2 2)) '(0 1 3 2))
... passed in (pseudolists?)
(equal? (pl-remove-dups '(0 1 2 1 3 2)) '(0 1 3 2))
... passed in (pseudolists?)
(equal? (pl-flatten '(0 1 . 2)) '(0 1 2))
... passed in (pseudolists?)
(equal? (pl-flatten '(0 (1 2))) '(0 1 2))
... passed in (pseudolists?)
(equal? (pl-flatten '(0 (1 (2 . 3)))) '(0 1 2 3))
... passed in (pseudolists?)
(equal? (pl-flatten '(0 (1 (2 . 3) 4))) '(0 1 2 3 4))
... passed in (pseudolists?)
(equal? (pl-flatten '(0 (1 (2 . 3) 4))) '(0 1 2 3 4))
... passed in (pseudolists?)
(equal? (pl-flatten '(0 (1 (2 . 3) 4 . #f))) '(0 1 2 3 4 #f))
... passed in (pseudolists?)
(equal? (pl-for ((x '(0 1 2 3 . #f))) (add1 x)) '(1 2 3 4 . #f))
... passed in (pseudolists?)
(equal? (pl-for ((x '(0 1 2 3))) (add1 x)) '(1 2 3 4))
... passed in (pseudolists?)
(equal? (pl-for ((x '(0 1 2 3 4 5 . #f) (odd? x))) x) '(1 3 5 . #f))
... passed in (pseudolists?)
(equal? (pl-for ((x '(0 1 2 3 4 5) (odd? x))) x) '(1 3 5))
... passed in (pseudolists?)
(equal?
  (pl-for ((n '(0 1 2 3 4 5) (positive? n) (even? n))) (* 10 n))
  '(20 40))
... passed in (pseudolists?)
(equal?
  (pl-for ((c '(A B C)) (k '(1 2 3 4))) (list c k))
  '((A 1) (A 2) (A 3) (A 4) (B 1) (B 2) (B 3) (B 4) (C 1) (C 2) (C 3) (C 4)))
... passed in (pseudolists?)
(equal?
  (pl-for ((c '(A B C . #f)) (k '(1 2 3 4 . #t))) (list c k))
  '((A 1)
    (A 2)
    (A 3)
    (A 4)
    (B 1)
    (B 2)
    (B 3)
    (B 4)
    (C 1)
    (C 2)
    (C 3)
    (C 4)
    .
    #f))
... passed in (pseudolists?)

Results of PSEUDOLISTS
----------------------------
All tests passed