(bind-func append_destructive:[List{!a}*,List{!a}*,List{!a}*]* (lambda (a b) (if (null? a) b (begin (tset! (last a) 1 b) a))))