(include "lib/core.scm")
(include "lib/pair.scm")
;; #t > #f
(define (bool->? a b)
(if a #t #f))
(define (list/insert x > l)
(match l with
() -> (list:cons x l)
(hd . tl) -> (if (> hd x)
(list:cons x l)
(list:cons hd (list/insert x > tl)))
))
(let ((l0 (LIST 20))
(l1 (LIST #f))
)
(set! l0 (list/insert 1 > l0))
(printn l0)
(set! l0 (list/insert 5 > l0))
(printn l0)
(set! l1 (list/insert #f bool->? l1))
(printn l1)
(set! l1 (list/insert #t bool->? l1))
(printn l1)
)