Hi.
I want to select (from package) all symbols which are names for
types but not for classes.
Example (sbcl):
;;; ----------------
CL-USER> (let (result)
(do-external-symbols (s "COMMON-LISP")
(handler-case (when (nth-value 1 (subtypep t s))
(unless (find-class s nil)
(push s result)))
(error () (values))))
(format t "~{~&~A~}" (sort result #'string<)))
ARRAY-RANK
ARRAY-TOTAL-SIZE
ATOM
BASE-CHAR
BIT
BOOLEAN
CHAR-CODE
CHAR-INT
COMPILED-FUNCTION
EXTENDED-CHAR
FLOAT-DIGITS
FLOAT-RADIX
KEYWORD
LONG-FLOAT
NIL
PATHNAME-DEVICE
PATHNAME-DIRECTORY
PATHNAME-HOST
PATHNAME-NAME
PATHNAME-TYPE
PATHNAME-VERSION
SHORT-FLOAT
SIGNED-BYTE
STANDARD-CHAR
UNSIGNED-BYTE
;;; ----------------
Is there any better way ?
TIA, Szymon.