The functionp now follows the new specification in Steele . Only internal functions ( SUBR's), byte compiled functions, and function closures result in a non- nil value. In particular, nil is returned for symbols and lambda expressions.
The function bit-vector-p has been added for compatibility with some software; it always returns nil .
The macros and and or now return multiple values if the final expression does.