;;in types.db: (append (#(procedure #:clean) append (list #!rest) *)) (: append2 (forall (a) (procedure (#!rest (list-of a)) (list-of a)))) (define (append2 . rest) (apply append rest)) (cond-expand (compiling (compiler-typecase (append2 '(1) '(2)) ((list-of fixnum) #t)))) ;;(append2 ;; (forall (a1) (#(procedure) append2 (#!rest (list-of a1)) (list-of a1))))