I thought LIST? would be a good name for the predicate that returns true to the objects generated by LIST, just an VECTOR? returns true to the objects generated by VECTOR and PAIR? returns true to the objects generated by PAIR ... eh ... CONS. Opps! Nevermind. John PS Maybe STRING should take a variable number of characters and returns a string. (define (string . chars) (list->string chars))