source: trunk/source/tests/ansi-tests/cl-symbol-names.lsp @ 8991

Last change on this file since 8991 was 8991, checked in by gz, 12 years ago

Check in the gcl ansi test suite (original, in preparation for making local changes)

File size: 33.9 KB
Line 
1;-*- Mode:     Lisp -*-
2;;;; Author:   Paul Dietz
3;;;; Created:  Sun Oct  6 21:49:33 2002
4;;;; Contains: Names of standard CL symbols
5
6(in-package :cl-test)
7
8;;;
9;;; These are the names of the 978 symbols that can and must be external to
10;;; the COMMON-LISP package.
11;;;
12
13(defparameter *cl-symbol-names*
14(mapcar #'string
15'(
16#:&allow-other-keys
17#:&aux
18#:&body
19#:&environment
20#:&key
21#:&optional
22#:&rest
23#:&whole
24#:*
25#:**
26#:***
27#:*break-on-signals*
28#:*compile-file-pathname*
29#:*compile-file-truename*
30#:*compile-print*
31#:*compile-verbose*
32#:*debug-io*
33#:*debugger-hook*
34#:*default-pathname-defaults*
35#:*error-output*
36#:*features*
37#:*gensym-counter*
38#:*load-pathname*
39#:*load-print*
40#:*load-truename*
41#:*load-verbose*
42#:*macroexpand-hook*
43#:*modules*
44#:*package*
45#:*print-array*
46#:*print-base*
47#:*print-case*
48#:*print-circle*
49#:*print-escape*
50#:*print-gensym*
51#:*print-length*
52#:*print-level*
53#:*print-lines*
54#:*print-miser-width*
55#:*print-pprint-dispatch*
56#:*print-pretty*
57#:*print-radix*
58#:*print-readably*
59#:*print-right-margin*
60#:*query-io*
61#:*random-state*
62#:*read-base*
63#:*read-default-float-format*
64#:*read-eval*
65#:*read-suppress*
66#:*readtable*
67#:*standard-input*
68#:*standard-output*
69#:*terminal-io*
70#:*trace-output*
71#:+
72#:++
73#:+++
74#:-
75#:/
76#://
77#:///
78#:/=
79#:1+
80#:1-
81#:<
82#:<=
83#:=
84#:>
85#:>=
86#:abort
87#:abs
88#:acons
89#:acos
90#:acosh
91#:add-method
92#:adjoin
93#:adjust-array
94#:adjustable-array-p
95#:allocate-instance
96#:alpha-char-p
97#:alphanumericp
98#:and
99#:append
100#:apply
101#:apropos
102#:apropos-list
103#:aref
104#:arithmetic-error
105#:arithmetic-error-operands
106#:arithmetic-error-operation
107#:array
108#:array-dimension
109#:array-dimension-limit
110#:array-dimensions
111#:array-displacement
112#:array-element-type
113#:array-has-fill-pointer-p
114#:array-in-bounds-p
115#:array-rank
116#:array-rank-limit
117#:array-row-major-index
118#:array-total-size
119#:array-total-size-limit
120#:arrayp
121#:ash
122#:asin
123#:asinh
124#:assert
125#:assoc
126#:assoc-if
127#:assoc-if-not
128#:atan
129#:atanh
130#:atom
131#:base-char
132#:base-string
133#:bignum
134#:bit
135#:bit-and
136#:bit-andc1
137#:bit-andc2
138#:bit-eqv
139#:bit-ior
140#:bit-nand
141#:bit-nor
142#:bit-not
143#:bit-orc1
144#:bit-orc2
145#:bit-vector
146#:bit-vector-p
147#:bit-xor
148#:block
149#:boole
150#:boole-1
151#:boole-2
152#:boole-and
153#:boole-andc1
154#:boole-andc2
155#:boole-c1
156#:boole-c2
157#:boole-clr
158#:boole-eqv
159#:boole-ior
160#:boole-nand
161#:boole-nor
162#:boole-orc1
163#:boole-orc2
164#:boole-set
165#:boole-xor
166#:boolean
167#:both-case-p
168#:boundp
169#:break
170#:broadcast-stream
171#:broadcast-stream-streams
172#:built-in-class
173#:butlast
174#:byte
175#:byte-position
176#:byte-size
177#:caaaar
178#:caaadr
179#:caaar
180#:caadar
181#:caaddr
182#:caadr
183#:caar
184#:cadaar
185#:cadadr
186#:cadar
187#:caddar
188#:cadddr
189#:caddr
190#:cadr
191#:call-arguments-limit
192#:call-method
193#:call-next-method
194#:car
195#:case
196#:catch
197#:ccase
198#:cdaaar
199#:cdaadr
200#:cdaar
201#:cdadar
202#:cdaddr
203#:cdadr
204#:cdar
205#:cddaar
206#:cddadr
207#:cddar
208#:cdddar
209#:cddddr
210#:cdddr
211#:cddr
212#:cdr
213#:ceiling
214#:cell-error
215#:cell-error-name
216#:cerror
217#:change-class
218#:char
219#:char-code
220#:char-code-limit
221#:char-downcase
222#:char-equal
223#:char-greaterp
224#:char-int
225#:char-lessp
226#:char-name
227#:char-not-equal
228#:char-not-greaterp
229#:char-not-lessp
230#:char-upcase
231#:char/=
232#:char<
233#:char<=
234#:char=
235#:char>
236#:char>=
237#:character
238#:characterp
239#:check-type
240#:cis
241#:class
242#:class-name
243#:class-of
244#:clear-input
245#:clear-output
246#:close
247#:clrhash
248#:code-char
249#:coerce
250#:compilation-speed
251#:compile
252#:compile-file
253#:compile-file-pathname
254#:compiled-function
255#:compiled-function-p
256#:compiler-macro
257#:compiler-macro-function
258#:complement
259#:complex
260#:complexp
261#:compute-applicable-methods
262#:compute-restarts
263#:concatenate
264#:concatenated-stream
265#:concatenated-stream-streams
266#:cond
267#:condition
268#:conjugate
269#:cons
270#:consp
271#:constantly
272#:constantp
273#:continue
274#:control-error
275#:copy-alist
276#:copy-list
277#:copy-pprint-dispatch
278#:copy-readtable
279#:copy-seq
280#:copy-structure
281#:copy-symbol
282#:copy-tree
283#:cos
284#:cosh
285#:count
286#:count-if
287#:count-if-not
288#:ctypecase
289#:debug
290#:decf
291#:declaim
292#:declaration
293#:declare
294#:decode-float
295#:decode-universal-time
296#:defclass
297#:defconstant
298#:defgeneric
299#:define-compiler-macro
300#:define-condition
301#:define-method-combination
302#:define-modify-macro
303#:define-setf-expander
304#:define-symbol-macro
305#:defmacro
306#:defmethod
307#:defpackage
308#:defparameter
309#:defsetf
310#:defstruct
311#:deftype
312#:defun
313#:defvar
314#:delete
315#:delete-duplicates
316#:delete-file
317#:delete-if
318#:delete-if-not
319#:delete-package
320#:denominator
321#:deposit-field
322#:describe
323#:describe-object
324#:destructuring-bind
325#:digit-char
326#:digit-char-p
327#:directory
328#:directory-namestring
329#:disassemble
330#:division-by-zero
331#:do
332#:do*
333#:do-all-symbols
334#:do-external-symbols
335#:do-symbols
336#:documentation
337#:dolist
338#:dotimes
339#:double-float
340#:double-float-epsilon
341#:double-float-negative-epsilon
342#:dpb
343#:dribble
344#:dynamic-extent
345#:ecase
346#:echo-stream
347#:echo-stream-input-stream
348#:echo-stream-output-stream
349#:ed
350#:eighth
351#:elt
352#:encode-universal-time
353#:end-of-file
354#:endp
355#:enough-namestring
356#:ensure-directories-exist
357#:ensure-generic-function
358#:eq
359#:eql
360#:equal
361#:equalp
362#:error
363#:etypecase
364#:eval
365#:eval-when
366#:evenp
367#:every
368#:exp
369#:export
370#:expt
371#:extended-char
372#:fboundp
373#:fceiling
374#:fdefinition
375#:ffloor
376#:fifth
377#:file-author
378#:file-error
379#:file-error-pathname
380#:file-length
381#:file-namestring
382#:file-position
383#:file-stream
384#:file-string-length
385#:file-write-date
386#:fill
387#:fill-pointer
388#:find
389#:find-all-symbols
390#:find-class
391#:find-if
392#:find-if-not
393#:find-method
394#:find-package
395#:find-restart
396#:find-symbol
397#:finish-output
398#:first
399#:fixnum
400#:flet
401#:float
402#:float-digits
403#:float-precision
404#:float-radix
405#:float-sign
406#:floating-point-inexact
407#:floating-point-invalid-operation
408#:floating-point-overflow
409#:floating-point-underflow
410#:floatp
411#:floor
412#:fmakunbound
413#:force-output
414#:format
415#:formatter
416#:fourth
417#:fresh-line
418#:fround
419#:ftruncate
420#:ftype
421#:funcall
422#:function
423#:function-keywords
424#:function-lambda-expression
425#:functionp
426#:gcd
427#:generic-function
428#:gensym
429#:gentemp
430#:get
431#:get-decoded-time
432#:get-dispatch-macro-character
433#:get-internal-real-time
434#:get-internal-run-time
435#:get-macro-character
436#:get-output-stream-string
437#:get-properties
438#:get-setf-expansion
439#:get-universal-time
440#:getf
441#:gethash
442#:go
443#:graphic-char-p
444#:handler-bind
445#:handler-case
446#:hash-table
447#:hash-table-count
448#:hash-table-p
449#:hash-table-rehash-size
450#:hash-table-rehash-threshold
451#:hash-table-size
452#:hash-table-test
453#:host-namestring
454#:identity
455#:if
456#:ignorable
457#:ignore
458#:ignore-errors
459#:imagpart
460#:import
461#:in-package
462#:incf
463#:initialize-instance
464#:inline
465#:input-stream-p
466#:inspect
467#:integer
468#:integer-decode-float
469#:integer-length
470#:integerp
471#:interactive-stream-p
472#:intern
473#:internal-time-units-per-second
474#:intersection
475#:invalid-method-error
476#:invoke-debugger
477#:invoke-restart
478#:invoke-restart-interactively
479#:isqrt
480#:keyword
481#:keywordp
482#:labels
483#:lambda
484#:lambda-list-keywords
485#:lambda-parameters-limit
486#:last
487#:lcm
488#:ldb
489#:ldb-test
490#:ldiff
491#:least-negative-double-float
492#:least-negative-long-float
493#:least-negative-normalized-double-float
494#:least-negative-normalized-long-float
495#:least-negative-normalized-short-float
496#:least-negative-normalized-single-float
497#:least-negative-short-float
498#:least-negative-single-float
499#:least-positive-double-float
500#:least-positive-long-float
501#:least-positive-normalized-double-float
502#:least-positive-normalized-long-float
503#:least-positive-normalized-short-float
504#:least-positive-normalized-single-float
505#:least-positive-short-float
506#:least-positive-single-float
507#:length
508#:let
509#:let*
510#:lisp-implementation-type
511#:lisp-implementation-version
512#:list
513#:list*
514#:list-all-packages
515#:list-length
516#:listen
517#:listp
518#:load
519#:load-logical-pathname-translations
520#:load-time-value
521#:locally
522#:log
523#:logand
524#:logandc1
525#:logandc2
526#:logbitp
527#:logcount
528#:logeqv
529#:logical-pathname
530#:logical-pathname-translations
531#:logior
532#:lognand
533#:lognor
534#:lognot
535#:logorc1
536#:logorc2
537#:logtest
538#:logxor
539#:long-float
540#:long-float-epsilon
541#:long-float-negative-epsilon
542#:long-site-name
543#:loop
544#:loop-finish
545#:lower-case-p
546#:machine-instance
547#:machine-type
548#:machine-version
549#:macro-function
550#:macroexpand
551#:macroexpand-1
552#:macrolet
553#:make-array
554#:make-broadcast-stream
555#:make-concatenated-stream
556#:make-condition
557#:make-dispatch-macro-character
558#:make-echo-stream
559#:make-hash-table
560#:make-instance
561#:make-instances-obsolete
562#:make-list
563#:make-load-form
564#:make-load-form-saving-slots
565#:make-method
566#:make-package
567#:make-pathname
568#:make-random-state
569#:make-sequence
570#:make-string
571#:make-string-input-stream
572#:make-string-output-stream
573#:make-symbol
574#:make-synonym-stream
575#:make-two-way-stream
576#:makunbound
577#:map
578#:map-into
579#:mapc
580#:mapcan
581#:mapcar
582#:mapcon
583#:maphash
584#:mapl
585#:maplist
586#:mask-field
587#:max
588#:member
589#:member-if
590#:member-if-not
591#:merge
592#:merge-pathnames
593#:method
594#:method-combination
595#:method-combination-error
596#:method-qualifiers
597#:min
598#:minusp
599#:mismatch
600#:mod
601#:most-negative-double-float
602#:most-negative-fixnum
603#:most-negative-long-float
604#:most-negative-short-float
605#:most-negative-single-float
606#:most-positive-double-float
607#:most-positive-fixnum
608#:most-positive-long-float
609#:most-positive-short-float
610#:most-positive-single-float
611#:muffle-warning
612#:multiple-value-bind
613#:multiple-value-call
614#:multiple-value-list
615#:multiple-value-prog1
616#:multiple-value-setq
617#:multiple-values-limit
618#:name-char
619#:namestring
620#:nbutlast
621#:nconc
622#:next-method-p
623#:nil
624#:nintersection
625#:ninth
626#:no-applicable-method
627#:no-next-method
628#:not
629#:notany
630#:notevery
631#:notinline
632#:nreconc
633#:nreverse
634#:nset-difference
635#:nset-exclusive-or
636#:nstring-capitalize
637#:nstring-downcase
638#:nstring-upcase
639#:nsublis
640#:nsubst
641#:nsubst-if
642#:nsubst-if-not
643#:nsubstitute
644#:nsubstitute-if
645#:nsubstitute-if-not
646#:nth
647#:nth-value
648#:nthcdr
649#:null
650#:number
651#:numberp
652#:numerator
653#:nunion
654#:oddp
655#:open
656#:open-stream-p
657#:optimize
658#:or
659#:otherwise
660#:output-stream-p
661#:package
662#:package-error
663#:package-error-package
664#:package-name
665#:package-nicknames
666#:package-shadowing-symbols
667#:package-use-list
668#:package-used-by-list
669#:packagep
670#:pairlis
671#:parse-error
672#:parse-integer
673#:parse-namestring
674#:pathname
675#:pathname-device
676#:pathname-directory
677#:pathname-host
678#:pathname-match-p
679#:pathname-name
680#:pathname-type
681#:pathname-version
682#:pathnamep
683#:peek-char
684#:phase
685#:pi
686#:plusp
687#:pop
688#:position
689#:position-if
690#:position-if-not
691#:pprint
692#:pprint-dispatch
693#:pprint-exit-if-list-exhausted
694#:pprint-fill
695#:pprint-indent
696#:pprint-linear
697#:pprint-logical-block
698#:pprint-newline
699#:pprint-pop
700#:pprint-tab
701#:pprint-tabular
702#:prin1
703#:prin1-to-string
704#:princ
705#:princ-to-string
706#:print
707#:print-not-readable
708#:print-not-readable-object
709#:print-object
710#:print-unreadable-object
711#:probe-file
712#:proclaim
713#:prog
714#:prog*
715#:prog1
716#:prog2
717#:progn
718#:program-error
719#:progv
720#:provide
721#:psetf
722#:psetq
723#:push
724#:pushnew
725#:quote
726#:random
727#:random-state
728#:random-state-p
729#:rassoc
730#:rassoc-if
731#:rassoc-if-not
732#:ratio
733#:rational
734#:rationalize
735#:rationalp
736#:read
737#:read-byte
738#:read-char
739#:read-char-no-hang
740#:read-delimited-list
741#:read-from-string
742#:read-line
743#:read-preserving-whitespace
744#:read-sequence
745#:reader-error
746#:readtable
747#:readtable-case
748#:readtablep
749#:real
750#:realp
751#:realpart
752#:reduce
753#:reinitialize-instance
754#:rem
755#:remf
756#:remhash
757#:remove
758#:remove-duplicates
759#:remove-if
760#:remove-if-not
761#:remove-method
762#:remprop
763#:rename-file
764#:rename-package
765#:replace
766#:require
767#:rest
768#:restart
769#:restart-bind
770#:restart-case
771#:restart-name
772#:return
773#:return-from
774#:revappend
775#:reverse
776#:room
777#:rotatef
778#:round
779#:row-major-aref
780#:rplaca
781#:rplacd
782#:safety
783#:satisfies
784#:sbit
785#:scale-float
786#:schar
787#:search
788#:second
789#:sequence
790#:serious-condition
791#:set
792#:set-difference
793#:set-dispatch-macro-character
794#:set-exclusive-or
795#:set-macro-character
796#:set-pprint-dispatch
797#:set-syntax-from-char
798#:setf
799#:setq
800#:seventh
801#:shadow
802#:shadowing-import
803#:shared-initialize
804#:shiftf
805#:short-float
806#:short-float-epsilon
807#:short-float-negative-epsilon
808#:short-site-name
809#:signal
810#:signed-byte
811#:signum
812#:simple-array
813#:simple-base-string
814#:simple-bit-vector
815#:simple-bit-vector-p
816#:simple-condition
817#:simple-condition-format-arguments
818#:simple-condition-format-control
819#:simple-error
820#:simple-string
821#:simple-string-p
822#:simple-type-error
823#:simple-vector
824#:simple-vector-p
825#:simple-warning
826#:sin
827#:single-float
828#:single-float-epsilon
829#:single-float-negative-epsilon
830#:sinh
831#:sixth
832#:sleep
833#:slot-boundp
834#:slot-exists-p
835#:slot-makunbound
836#:slot-missing
837#:slot-unbound
838#:slot-value
839#:software-type
840#:software-version
841#:some
842#:sort
843#:space
844#:special
845#:special-operator-p
846#:speed
847#:sqrt
848#:stable-sort
849#:standard
850#:standard-char
851#:standard-char-p
852#:standard-class
853#:standard-generic-function
854#:standard-method
855#:standard-object
856#:step
857#:storage-condition
858#:store-value
859#:stream
860#:stream-element-type
861#:stream-error
862#:stream-error-stream
863#:stream-external-format
864#:streamp
865#:string
866#:string-capitalize
867#:string-downcase
868#:string-equal
869#:string-greaterp
870#:string-left-trim
871#:string-lessp
872#:string-not-equal
873#:string-not-greaterp
874#:string-not-lessp
875#:string-right-trim
876#:string-stream
877#:string-trim
878#:string-upcase
879#:string/=
880#:string<
881#:string<=
882#:string=
883#:string>
884#:string>=
885#:stringp
886#:structure
887#:structure-class
888#:structure-object
889#:style-warning
890#:sublis
891#:subseq
892#:subsetp
893#:subst
894#:subst-if
895#:subst-if-not
896#:substitute
897#:substitute-if
898#:substitute-if-not
899#:subtypep
900#:svref
901#:sxhash
902#:symbol
903#:symbol-function
904#:symbol-macrolet
905#:symbol-name
906#:symbol-package
907#:symbol-plist
908#:symbol-value
909#:symbolp
910#:synonym-stream
911#:synonym-stream-symbol
912#:t
913#:tagbody
914#:tailp
915#:tan
916#:tanh
917#:tenth
918#:terpri
919#:the
920#:third
921#:throw
922#:time
923#:trace
924#:translate-logical-pathname
925#:translate-pathname
926#:tree-equal
927#:truename
928#:truncate
929#:two-way-stream
930#:two-way-stream-input-stream
931#:two-way-stream-output-stream
932#:type
933#:type-error
934#:type-error-datum
935#:type-error-expected-type
936#:type-of
937#:typecase
938#:typep
939#:unbound-slot
940#:unbound-slot-instance
941#:unbound-variable
942#:undefined-function
943#:unexport
944#:unintern
945#:union
946#:unless
947#:unread-char
948#:unsigned-byte
949#:untrace
950#:unuse-package
951#:unwind-protect
952#:update-instance-for-different-class
953#:update-instance-for-redefined-class
954#:upgraded-array-element-type
955#:upgraded-complex-part-type
956#:upper-case-p
957#:use-package
958#:use-value
959#:user-homedir-pathname
960#:values
961#:values-list
962#:variable
963#:vector
964#:vector-pop
965#:vector-push
966#:vector-push-extend
967#:vectorp
968#:warn
969#:warning
970#:when
971#:wild-pathname-p
972#:with-accessors
973#:with-compilation-unit
974#:with-condition-restarts
975#:with-hash-table-iterator
976#:with-input-from-string
977#:with-open-file
978#:with-open-stream
979#:with-output-to-string
980#:with-package-iterator
981#:with-simple-restart
982#:with-slots
983#:with-standard-io-syntax
984#:write
985#:write-byte
986#:write-char
987#:write-line
988#:write-sequence
989#:write-string
990#:write-to-string
991#:y-or-n-p
992#:yes-or-no-p
993#:zerop)))
994
995(defparameter *cl-symbols*
996  (let ((pkg (find-package :common-lisp)))
997    (#-clisp progn
998     #+clisp ext:without-package-lock  #+clisp ("COMMON-LISP")
999     (mapcar #'(lambda (str) (intern str pkg))
1000             *cl-symbol-names*))))
1001
1002(defparameter *cl-symbols-vector*
1003  (make-array (length *cl-symbols*) :initial-contents *cl-symbols*))
1004
1005;;; Symbols that name unary predicate that can be safely applied to any object
1006(defparameter *cl-safe-predicates*
1007  '(arrayp atom bit-vector-p characterp compiled-function-p complexp
1008    consp floatp functionp hash-table-p keywordp listp not null
1009    numberp packagep pathnamep random-state-p rationalp readtablep
1010    realp simple-bit-vector-p simple-string-p simple-vector-p
1011    streamp stringp symbolp vectorp))
1012
1013;;; Symbols classified by their kind in the spec
1014(defparameter *cl-function-symbols*
1015  '(
1016    *
1017    +
1018    -
1019    /
1020    /=
1021    1+
1022    1-
1023    <
1024    <=
1025    =
1026    >
1027    >=
1028    abort
1029    abs
1030    acons
1031    acos
1032    acosh
1033    adjoin
1034    adjust-array
1035    adjustable-array-p
1036    alpha-char-p
1037    alphanumericp
1038    append
1039    apply
1040    apropos
1041    apropos-list
1042    arithmetic-error-operands
1043    arithmetic-error-operation
1044    array-dimension
1045    array-dimensions
1046    array-displacement
1047    array-element-type
1048    array-has-fill-pointer-p
1049    array-in-bounds-p
1050    array-rank
1051    array-row-major-index
1052    array-total-size
1053    arrayp
1054    ash
1055    asin
1056    asinh
1057    assoc-if-not
1058    assoc
1059    assoc-if
1060    atan
1061    atanh
1062    atom
1063    bit-and
1064    bit-andc1
1065    bit-andc2
1066    bit-eqv
1067    bit-ior
1068    bit-nand
1069    bit-nor
1070    bit-not
1071    bit-orc1
1072    bit-orc2
1073    bit-vector-p
1074    bit-xor
1075    boole
1076    both-case-p
1077    boundp
1078    break
1079    broadcast-stream-streams
1080    butlast
1081    byte
1082    byte-position
1083    byte-size
1084    ceiling
1085    cell-error-name
1086    cerror
1087    char-code
1088    char-downcase
1089    char-equal
1090    char-greaterp
1091    char-int
1092    char-lessp
1093    char-name
1094    char-not-equal
1095    char-not-greaterp
1096    char-not-lessp
1097    char-upcase
1098    char/=
1099    char<
1100    char<=
1101    char=
1102    char>
1103    char>=
1104    character
1105    characterp
1106    cis
1107    class-of
1108    clear-input
1109    clear-output
1110    close
1111    clrhash
1112    code-char
1113    coerce
1114    compile
1115    compile-file
1116    compile-file-pathname
1117    compiled-function-p
1118    complement
1119    complex
1120    complexp
1121    compute-restarts
1122    concatenate
1123    concatenated-stream-streams
1124    conjugate
1125    cons
1126    consp
1127    constantly
1128    constantp
1129    continue
1130    copy-alist
1131    copy-list
1132    copy-pprint-dispatch
1133    copy-readtable
1134    copy-seq
1135    copy-structure
1136    copy-symbol
1137    copy-tree
1138    cos
1139    cosh
1140    count
1141    count-if
1142    count-if-not
1143    decode-float
1144    decode-universal-time
1145    delete
1146    delete-duplicates
1147    delete-file
1148    delete-if
1149    delete-if-not
1150    delete-package
1151    denominator
1152    deposit-field
1153    describe
1154    digit-char
1155    digit-char-p
1156    directory
1157    directory-namestring
1158    disassemble
1159    dpb
1160    dribble
1161    echo-stream-input-stream
1162    echo-stream-output-stream
1163    ;;; The function ED is commented out because an implementation
1164    ;;; needn't provide this function.
1165    ;; ed
1166    encode-universal-time
1167    endp
1168    enough-namestring
1169    ensure-directories-exist
1170    ensure-generic-function
1171    eq
1172    eql
1173    equal
1174    equalp
1175    error
1176    eval
1177    evenp
1178    every
1179    exp
1180    export
1181    expt
1182    fboundp
1183    fceiling
1184    ffloor
1185    file-author
1186    file-error-pathname
1187    file-length
1188    file-namestring
1189    file-position
1190    file-string-length
1191    file-write-date
1192    fill
1193    find
1194    find-all-symbols
1195    find-if
1196    find-if-not
1197    find-package
1198    find-restart
1199    find-symbol
1200    finish-output
1201    float
1202    float-digits
1203    float-precision
1204    float-radix
1205    float-sign
1206    floatp
1207    floor
1208    fmakunbound
1209    force-output
1210    format
1211    fresh-line
1212    fround
1213    funcall
1214    function-lambda-expression
1215    functionp
1216    gcd
1217    gensym
1218    gentemp
1219    get-decoded-time
1220    get-dispatch-macro-character
1221    get-internal-real-time
1222    get-internal-run-time
1223    get-macro-character
1224    get-output-stream-string
1225    get-properties
1226    get-setf-expansion
1227    get-universal-time
1228    graphic-char-p
1229    hash-table-count
1230    hash-table-p
1231    hash-table-rehash-size
1232    hash-table-rehash-threshold
1233    hash-table-size
1234    hash-table-test
1235    host-namestring
1236    identity
1237    imagpart
1238    import
1239    input-stream-p
1240    inspect
1241    integer-decode-float
1242    integer-length
1243    integerp
1244    interactive-stream-p
1245    intern
1246    intersection
1247    invalid-method-error
1248    invoke-debugger
1249    invoke-restart
1250    invoke-restart-interactively
1251    isqrt
1252    keywordp
1253    last
1254    lcm
1255    ldb-test
1256    ldiff
1257    length
1258    lisp-implementation-type
1259    lisp-implementation-version
1260    list
1261    list*
1262    list-all-packages
1263    list-length
1264    listen
1265    listp
1266    load
1267    load-logical-pathname-translations
1268    log
1269    logand
1270    logandc1
1271    logandc2
1272    logbitp
1273    logcount
1274    logeqv
1275    logical-pathname
1276    logior
1277    lognand
1278    lognor
1279    lognot
1280    logorc1
1281    logorc2
1282    logtest
1283    logxor
1284    long-site-name
1285    lower-case-p
1286    machine-instance
1287    machine-type
1288    machine-version
1289    macroexpand
1290    macroexpand-1
1291    make-array
1292    make-broadcast-stream
1293    make-concatenated-stream
1294    make-condition
1295    make-dispatch-macro-character
1296    make-echo-stream
1297    make-hash-table
1298    make-list
1299    make-load-form-saving-slots
1300    make-package
1301    make-pathname
1302    make-random-state
1303    make-sequence
1304    make-string
1305    make-string-input-stream
1306    make-string-output-stream
1307    make-symbol
1308    make-synonym-stream
1309    make-two-way-stream
1310    makunbound
1311    map
1312    map-into
1313    mapc
1314    mapcan
1315    mapcar
1316    mapcon
1317    maphash
1318    mapl
1319    maplist
1320    max
1321    member
1322    member-if
1323    member-if-not
1324    merge
1325    merge-pathnames
1326    method-combination-error
1327    min
1328    minusp
1329    mismatch
1330    mod
1331    muffle-warning
1332    name-char
1333    namestring
1334    nbutlast
1335    nconc
1336    nintersection
1337    not
1338    notany
1339    notevery
1340    nreconc
1341    nreverse
1342    nset-difference
1343    nset-exclusive-or
1344    nstring-capitalize
1345    nstring-downcase
1346    nstring-upcase
1347    nsublis
1348    nsubst
1349    nsubst-if
1350    nsubst-if-not
1351    nsubstitute
1352    nsubstitute-if
1353    nsubstitute-if-not
1354    nthcdr
1355    null
1356    numberp
1357    numerator
1358    nunion
1359    oddp
1360    open
1361    open-stream-p
1362    output-stream-p
1363    package-error-package
1364    package-name
1365    package-nicknames
1366    package-shadowing-symbols
1367    package-use-list
1368    package-used-by-list
1369    packagep
1370    pairlis
1371    parse-integer
1372    parse-namestring
1373    pathname
1374    pathname-device
1375    pathname-directory
1376    pathname-host
1377    pathname-match-p
1378    pathname-name
1379    pathname-type
1380    pathname-version
1381    pathnamep
1382    peek-char
1383    phase
1384    plusp
1385    position
1386    position-if
1387    position-if-not
1388    pprint
1389    pprint-dispatch
1390    pprint-fill
1391    pprint-indent
1392    pprint-linear
1393    pprint-newline
1394    pprint-tab
1395    pprint-tabular
1396    prin1
1397    prin1-to-string
1398    princ
1399    princ-to-string
1400    print
1401    print-not-readable-object
1402    probe-file
1403    proclaim
1404    provide
1405    random
1406    random-state-p
1407    rassoc
1408    rassoc-if
1409    rassoc-if-not
1410    rational
1411    rationalize
1412    rationalp
1413    read
1414    read-byte
1415    read-char
1416    read-char-no-hang
1417    read-delimited-list
1418    read-from-string
1419    read-line
1420    read-preserving-whitespace
1421    read-sequence
1422    readtablep
1423    realp
1424    realpart
1425    reduce
1426    rem
1427    remhash
1428    remove
1429    remove-duplicates
1430    remove-if
1431    remove-if-not
1432    remprop
1433    rename-file
1434    rename-package
1435    replace
1436    require
1437    restart-name
1438    revappend
1439    reverse
1440    room
1441    round
1442    rplaca
1443    rplacd
1444    scale-float
1445    search
1446    set
1447    set-difference
1448    set-dispatch-macro-character
1449    set-exclusive-or
1450    set-macro-character
1451    set-pprint-dispatch
1452    set-syntax-from-char
1453    shadow
1454    shadowing-import
1455    short-site-name
1456    signal
1457    signum
1458    simple-bit-vector-p
1459    simple-condition-format-arguments
1460    simple-condition-format-control
1461    simple-string-p
1462    simple-vector-p
1463    sin
1464    sinh
1465    slot-exists-p
1466    sleep
1467    slot-boundp
1468    slot-makunbound
1469    slot-value
1470    software-type
1471    software-version
1472    some
1473    sort
1474    special-operator-p
1475    sqrt
1476    stable-sort
1477    standard-char-p
1478    store-value
1479    stream-element-type
1480    stream-error-stream
1481    stream-external-format
1482    streamp
1483    string
1484    string-capitalize
1485    string-downcase
1486    string-equal
1487    string-greaterp
1488    string-left-trim
1489    string-lessp
1490    string-not-equal
1491    string-not-greaterp
1492    string-not-lessp
1493    string-right-trim
1494    string-trim
1495    string-upcase
1496    string/=
1497    string<
1498    string<=
1499    string=
1500    string>
1501    string>=
1502    stringp
1503    sublis
1504    subsetp
1505    subst
1506    subst-if
1507    subst-if-not
1508    substitute
1509    substitute-if
1510    substitute-if-not
1511    subtypep
1512    sxhash
1513    symbol-name
1514    symbol-package
1515    symbolp
1516    synonym-stream-symbol
1517    tailp
1518    tan
1519    tanh
1520    terpri
1521    translate-logical-pathname
1522    translate-pathname
1523    tree-equal
1524    truename
1525    truncate ftruncate
1526    two-way-stream-input-stream
1527    two-way-stream-output-stream
1528    type-error-datum
1529    type-error-expected-type
1530    type-of
1531    typep
1532    unbound-slot-instance
1533    unexport
1534    unintern
1535    union
1536    unread-char
1537    unuse-package
1538    upgraded-array-element-type
1539    upgraded-complex-part-type
1540    upper-case-p
1541    use-package
1542    use-value
1543    user-homedir-pathname
1544    values-list
1545    vector
1546    vector-pop
1547    vector-push
1548    vector-push-extend
1549    vectorp
1550    warn
1551    wild-pathname-p
1552    write
1553    write-byte
1554    write-char
1555    write-line
1556    write-sequence
1557    write-string
1558    write-to-string
1559    y-or-n-p
1560    yes-or-no-p
1561    zerop
1562    ))
1563
1564(defparameter *cl-variable-symbols*
1565  '(
1566    *
1567    **
1568    ***
1569    *break-on-signals*
1570    *compile-file-pathname*
1571    *compile-file-truename*
1572    *compile-print*
1573    *compile-verbose*
1574    *debug-io*
1575    *debugger-hook*
1576    *default-pathname-defaults*
1577    *error-output*
1578    *features*
1579    *gensym-counter*
1580    *load-pathname*
1581    *load-print*
1582    *load-truename*
1583    *load-verbose*
1584    *macroexpand-hook*
1585    *modules*
1586    *package*
1587    *print-array*
1588    *print-base*
1589    *print-case*
1590    *print-circle*
1591    *print-escape*
1592    *print-gensym*
1593    *print-length*
1594    *print-level*
1595    *print-lines*
1596    *print-miser-width*
1597    *print-pprint-dispatch*
1598    *print-pretty*
1599    *print-radix*
1600    *print-readably*
1601    *print-right-margin*
1602    *query-io*
1603    *random-state*
1604    *read-base*
1605    *read-default-float-format*
1606    *read-eval*
1607    *read-suppress*
1608    *readtable*
1609    *standard-input*
1610    *standard-output*
1611    *terminal-io*
1612    *trace-output*
1613    +
1614    ++
1615    +++
1616    /
1617    //
1618    ///
1619    -
1620    ))
1621
1622(defparameter *cl-constant-symbols*
1623  '(
1624    array-dimension-limit
1625    array-rank-limit
1626    array-total-size-limit
1627    boole-1
1628    boole-2
1629    boole-and
1630    boole-andc1
1631    boole-andc2
1632    boole-c1
1633    boole-c2
1634    boole-clr
1635    boole-eqv
1636    boole-ior
1637    boole-nand
1638    boole-nor
1639    boole-orc1
1640    boole-orc2
1641    boole-set
1642    boole-xor
1643    call-arguments-limit
1644    char-code-limit
1645    double-float-epsilon
1646    double-float-negative-epsilon
1647    internal-time-units-per-second
1648    lambda-list-keywords
1649    lambda-parameters-limit
1650    least-negative-double-float
1651    least-negative-long-float
1652    least-negative-normalized-double-float
1653    least-negative-normalized-long-float
1654    least-negative-normalized-short-float
1655    least-negative-normalized-single-float
1656    least-negative-short-float
1657    least-negative-single-float
1658    least-positive-double-float
1659    least-positive-long-float
1660    least-positive-normalized-double-float
1661    least-positive-normalized-long-float
1662    least-positive-normalized-short-float
1663    least-positive-normalized-single-float
1664    least-positive-short-float
1665    least-positive-single-float
1666    long-float-epsilon
1667    long-float-negative-epsilon
1668    most-negative-double-float
1669    most-negative-fixnum
1670    most-negative-long-float
1671    most-negative-short-float
1672    most-negative-single-float
1673    most-positive-double-float
1674    most-positive-fixnum
1675    most-positive-long-float
1676    most-positive-short-float
1677    most-positive-single-float
1678    multiple-values-limit
1679    nil
1680    pi
1681    short-float-epsilon
1682    short-float-negative-epsilon
1683    single-float-epsilon
1684    single-float-negative-epsilon
1685    t
1686    ))
1687
1688(defparameter *cl-macro-symbols*
1689  '(
1690    and
1691    assert
1692    case
1693    ccase
1694    ecase
1695    check-type
1696    cond
1697    declaim
1698    defclass
1699    defconstant
1700    defgeneric
1701    define-compiler-macro
1702    define-condition
1703    define-method-combination
1704    define-modify-macro
1705    define-setf-expander
1706    define-symbol-macro
1707    defmacro
1708    defmethod
1709    defpackage
1710    defparameter
1711    defvar
1712    defsetf
1713    defstruct
1714    deftype
1715    defun
1716    destructuring-bind
1717    do
1718    do*
1719    do-symbols
1720    do-external-symbols
1721    do-all-symbols
1722    dolist
1723    dotimes
1724    formatter
1725    cl:handler-bind
1726    cl:handler-case
1727    ignore-errors
1728    in-package
1729    incf
1730    decf
1731    lambda
1732    loop
1733    multiple-value-bind
1734    multiple-value-list
1735    multiple-value-setq
1736    nth-value
1737    or
1738    pop
1739    pprint-logical-block
1740    print-unreadable-object
1741    prog
1742    prog*
1743    prog1
1744    prog2
1745    psetq
1746    push
1747    pushnew
1748    remf
1749    restart-bind
1750    restart-case
1751    return
1752    rotatef
1753    setf
1754    psetf
1755    shiftf
1756    step
1757    time
1758    trace
1759    untrace
1760    typecase
1761    ctypecase
1762    etypecase
1763    when
1764    unless
1765    with-accessors
1766    with-compilation-unit
1767    with-condition-restarts
1768    with-hash-table-iterator
1769    with-input-from-string
1770    with-open-file
1771    with-open-stream
1772    with-output-to-string
1773    with-package-iterator
1774    with-simple-restart
1775    with-slots
1776    with-standard-io-syntax
1777    ))
1778
1779(defparameter *cl-accessor-symbols*
1780  '(
1781    aref
1782    bit
1783    caaaar
1784    caaadr
1785    caaar
1786    caadar
1787    caaddr
1788    caadr
1789    caar
1790    cadaar
1791    cadadr
1792    cadar
1793    caddar
1794    cadddr
1795    caddr
1796    cadr
1797    car
1798    cdaaar
1799    cdaadr
1800    cdaar
1801    cdadar
1802    cdaddr
1803    cdadr
1804    cdar
1805    cddaar
1806    cddadr
1807    cddar
1808    cdddar
1809    cddddr
1810    cdddr
1811    cddr
1812    cdr
1813    char
1814    compiler-macro-function
1815    eighth
1816    elt
1817    fdefinition
1818    fifth
1819    fill-pointer
1820    find-class
1821    first
1822    fourth
1823    get
1824    getf
1825    gethash
1826    ldb
1827    logical-pathname-translations
1828    macro-function
1829    mask-field
1830    ninth
1831    nth
1832    readtable-case
1833    rest
1834    row-major-aref
1835    sbit
1836    schar
1837    second
1838    seventh
1839    sixth
1840    subseq
1841    svref
1842    symbol-function
1843    symbol-plist
1844    symbol-value
1845    tenth
1846    third
1847    values
1848    ))
1849
1850(defparameter *cl-condition-type-symbols*
1851  '(
1852    arithmetic-error
1853    cell-error
1854    condition
1855    control-error
1856    division-by-zero
1857    end-of-file
1858    error
1859    file-error
1860    floating-point-inexact
1861    floating-point-invalid-operation
1862    floating-point-overflow
1863    floating-point-underflow
1864    package-error
1865    parse-error
1866    print-not-readable
1867    program-error
1868    reader-error
1869    serious-condition
1870    simple-condition
1871    simple-error
1872    simple-type-error
1873    simple-warning
1874    storage-condition
1875    stream-error
1876    style-warning
1877    type-error
1878    unbound-slot
1879    unbound-variable
1880    undefined-function
1881    warning
1882    ))
1883
1884(defparameter *cl-class-symbols*
1885  '(standard-object structure-object))
1886
1887(defparameter *cl-declaration-symbols*
1888  '(
1889    declaration
1890    dynamic-extent
1891    ftype
1892    ignore
1893    ignorable
1894    inline
1895    notinline
1896    optimize
1897    special
1898    type))
1899
1900(defparameter *cl-local-function-symbols*
1901  '(call-next-method next-method-p))
1902
1903(defparameter *cl-local-macro-symbols*
1904  '(
1905    call-method
1906    make-method
1907    loop-finish
1908    pprint-exit-if-list-exhausted
1909    pprint-pop
1910    ))
1911
1912(defparameter *cl-special-operator-symbols*
1913  '(
1914    block
1915    catch
1916    eval-when
1917    flet
1918    function
1919    go
1920    if
1921    labels
1922    let
1923    let*
1924    load-time-value
1925    locally
1926    macrolet
1927    multiple-value-call
1928    multiple-value-prog1
1929    progn
1930    progv
1931    quote
1932    return-from
1933    setq
1934    symbol-macrolet
1935    tagbody
1936    the
1937    throw
1938    unwind-protect
1939))
1940
1941(defparameter *cl-standard-generic-function-symbols*
1942  '(
1943    add-method
1944    allocate-instance
1945    change-class
1946    class-name
1947    compute-applicable-methods
1948    describe-object
1949    documentation
1950    find-method
1951    function-keywords
1952    initialize-instance
1953    make-instance
1954    make-instances-obsolete
1955    make-load-form
1956    method-qualifiers
1957    no-applicable-method
1958    no-next-method
1959    print-object
1960    reinitialize-instance
1961    remove-method
1962    shared-initialize
1963    slot-missing
1964    slot-unbound
1965    update-instance-for-different-class
1966    update-instance-for-redefined-class
1967    ))
1968
1969(defparameter *cl-system-class-symbols*
1970  '(
1971    array
1972    bit-vector
1973    broadcast-stream
1974    built-in-class
1975    character
1976    class
1977    complex
1978    concatenated-stream
1979    cons
1980    echo-stream
1981    file-stream
1982    float
1983    function
1984    generic-function
1985    hash-table
1986    integer
1987    list
1988    logical-pathname
1989    method
1990    method-combination
1991    null
1992    number
1993    package
1994    pathname
1995    random-state
1996    ratio
1997    rational
1998    readtable
1999    real
2000    restart
2001    sequence
2002    standard-class
2003    standard-generic-function
2004    standard-method
2005    stream
2006    string
2007    string-stream
2008    structure-class
2009    symbol
2010    synonym-stream
2011    t
2012    two-way-stream
2013    vector
2014    ))
2015
2016(defparameter *cl-type-symbols*
2017  '(
2018    atom
2019    base-char
2020    base-string
2021    bignum
2022    bit
2023    boolean
2024    compiled-function
2025    extended-char
2026    fixnum
2027    keyword
2028    nil
2029    short-float
2030    single-float
2031    double-float
2032    long-float
2033    signed-byte
2034    simple-array
2035    simple-base-string
2036    simple-bit-vector
2037    simple-string
2038    simple-vector
2039    standard-char
2040    unsigned-byte
2041    ))
2042
2043(defparameter *cl-type-specifier-symbols*
2044  '(
2045    and
2046    eql
2047    member
2048    mod
2049    not
2050    or
2051    satisfies
2052    values
2053    ))
2054
2055(defparameter *cl-restart-symbols*
2056  '(
2057    abort
2058    continue
2059    muffle-warning
2060    store-value
2061    use-value
2062    ))
2063
2064;;; Symbols that are names of types that are also classes
2065;;; See figure 4-8 in section 4.3.7
2066(defparameter *cl-types-that-are-classes-symbols*
2067  '(
2068    arithmetic-error
2069    array
2070    bit-vector
2071    broadcast-stream
2072    built-in-class
2073    cell-error
2074    character
2075    class
2076    complex
2077    concatenated-stream
2078    condition
2079    cons
2080    control-error
2081    division-by-zero
2082    echo-stream
2083    end-of-file
2084    error
2085    file-error
2086    file-stream
2087    float
2088    floating-point-inexact
2089    floating-point-invalid-operation
2090    floating-point-overflow
2091    floating-point-underflow
2092    function
2093    generic-function
2094    hash-table
2095    integer
2096    list
2097    logical-pathname
2098    method
2099    method-combination
2100    null
2101    number
2102    package
2103    package-error
2104    parse-error
2105    pathname
2106    print-not-readable
2107    program-error
2108    random-state
2109    ratio
2110    rational
2111    reader-error
2112    readtable
2113    real
2114    restart
2115    sequence
2116    serious-condition
2117    simple-condition
2118    simple-error
2119    simple-type-error
2120    simple-warning
2121    standard-class
2122    standard-generic-function
2123    standard-method
2124    standard-object
2125    storage-condition
2126    stream
2127    stream-error
2128    string
2129    string-stream
2130    structure-class
2131    structure-object
2132    style-warning
2133    symbol
2134    synonym-stream
2135    t
2136    two-way-stream
2137    type-error
2138    unbound-slot
2139    unbound-variable
2140    undefined-function
2141    vector
2142    warning
2143    ))
2144
2145(defparameter *cl-all-type-symbols*
2146  (reduce #'union
2147          (list *cl-type-symbols* *cl-types-that-are-classes-symbols*
2148                *cl-system-class-symbols* *cl-class-symbols*
2149                *cl-condition-type-symbols*)))
2150
2151(defparameter *cl-non-function-macro-special-operator-symbols*
2152  (set-difference
2153   *cl-symbols*
2154   (reduce #'union
2155           (list *cl-function-symbols*
2156                 *cl-macro-symbols*
2157                 *cl-accessor-symbols*
2158                 *cl-local-function-symbols*
2159                 *cl-local-macro-symbols*
2160                 *cl-special-operator-symbols*
2161                 *cl-standard-generic-function-symbols*
2162                 '(declare ed)))))
2163
2164(defparameter *cl-function-or-accessor-symbols*
2165  (append *cl-function-symbols* *cl-accessor-symbols*))
2166
2167(defparameter *cl-non-variable-constant-symbols*
2168  (set-difference
2169   *cl-symbols*
2170   (union *cl-variable-symbols*
2171          *cl-constant-symbols*)))
Note: See TracBrowser for help on using the repository browser.