1;; -*- Lisp -*- vim:filetype=lisp
2
3CHAR-CODE-LIMIT
4#+XCL 128 #+(or (and CLISP (not UNICODE)) AKCL ECL CMU SBCL OpenMCL) 256 #+(or ALLEGRO LISPWORKS) 65536 #+(and CLISP UNICODE) 1114112 #-(or XCL CLISP AKCL ECL ALLEGRO CMU SBCL OpenMCL LISPWORKS) UNKNOWN
5
6(STANDARD-CHAR-P #\a)
7T
8
9(STANDARD-CHAR-P #\$)
10T
11
12(STANDARD-CHAR-P #\.)
13T
14
15(STANDARD-CHAR-P #\A)
16T
17
18(STANDARD-CHAR-P 1)
19ERROR
20
21(STANDARD-CHAR-P #\\)
22T
23
24(STANDARD-CHAR-P #\5)
25T
26
27(STANDARD-CHAR-P #\))
28T
29
30(STANDARD-CHAR-P #\%)
31T
32
33(STANDARD-CHAR-P #\BACKSPACE)
34#+XCL T #-XCL NIL
35
36(STANDARD-CHAR-P #\PAGE)
37#+XCL T #-XCL NIL
38
39(STANDARD-CHAR-P #\RETURN)
40#+XCL T #-XCL NIL
41
42(GRAPHIC-CHAR-P #\a)
43T
44
45(GRAPHIC-CHAR-P #\$)
46T
47
48(GRAPHIC-CHAR-P #\.)
49T
50
51(GRAPHIC-CHAR-P #\A)
52T
53
54(GRAPHIC-CHAR-P 1)
55ERROR
56
57(GRAPHIC-CHAR-P #\\)
58T
59
60(GRAPHIC-CHAR-P #\5)
61T
62
63(GRAPHIC-CHAR-P #\))
64T
65
66(GRAPHIC-CHAR-P #\%)
67T
68
69(GRAPHIC-CHAR-P #\BACKSPACE)
70NIL
71
72(GRAPHIC-CHAR-P #\PAGE)
73NIL
74
75(GRAPHIC-CHAR-P #\RETURN)
76NIL
77
78(#-(or CMU SBCL OpenMCL LISPWORKS) STRING-CHAR-P #+(or CMU SBCL OpenMCL LISPWORKS) CHARACTERP #\a)
79T
80
81(#-(or CMU SBCL OpenMCL LISPWORKS) STRING-CHAR-P #+(or CMU SBCL OpenMCL LISPWORKS) CHARACTERP #\$)
82T
83
84(#-(or CMU SBCL OpenMCL LISPWORKS) STRING-CHAR-P #+(or CMU SBCL OpenMCL LISPWORKS) CHARACTERP #\.)
85T
86
87(#-(or CMU SBCL OpenMCL LISPWORKS) STRING-CHAR-P #+(or CMU SBCL OpenMCL LISPWORKS) CHARACTERP #\A)
88T
89
90#-(or CMU SBCL OpenMCL LISPWORKS)
91(STRING-CHAR-P 1)
92#-(or CMU SBCL OpenMCL LISPWORKS)
93ERROR
94
95(#-(or CMU SBCL OpenMCL LISPWORKS) STRING-CHAR-P #+(or CMU SBCL OpenMCL LISPWORKS) CHARACTERP #\\)
96T
97
98(#-(or CMU SBCL OpenMCL LISPWORKS) STRING-CHAR-P #+(or CMU SBCL OpenMCL LISPWORKS) CHARACTERP #\5)
99T
100
101(#-(or CMU SBCL OpenMCL LISPWORKS) STRING-CHAR-P #+(or CMU SBCL OpenMCL LISPWORKS) CHARACTERP #\))
102T
103
104(#-(or CMU SBCL OpenMCL LISPWORKS) STRING-CHAR-P #+(or CMU SBCL OpenMCL LISPWORKS) CHARACTERP #\%)
105T
106
107(#-(or CMU SBCL OpenMCL LISPWORKS) STRING-CHAR-P #+(or CMU SBCL OpenMCL LISPWORKS) CHARACTERP #\BACKSPACE)
108T
109
110(#-(or CMU SBCL OpenMCL LISPWORKS) STRING-CHAR-P #+(or CMU SBCL OpenMCL LISPWORKS) CHARACTERP #\PAGE)
111T
112
113(#-(or CMU SBCL OpenMCL LISPWORKS) STRING-CHAR-P #+(or CMU SBCL OpenMCL LISPWORKS) CHARACTERP #\RETURN)
114T
115
116(ALPHA-CHAR-P #\a)
117T
118
119(ALPHA-CHAR-P #\$)
120NIL
121
122(ALPHA-CHAR-P #\.)
123NIL
124
125(ALPHA-CHAR-P #\A)
126T
127
128(ALPHA-CHAR-P 1)
129ERROR
130
131(ALPHA-CHAR-P #\\)
132NIL
133
134(ALPHA-CHAR-P #\5)
135NIL
136
137(ALPHA-CHAR-P #\))
138NIL
139
140(ALPHA-CHAR-P #\%)
141NIL
142
143(ALPHA-CHAR-P #\BACKSPACE)
144NIL
145
146(ALPHA-CHAR-P #\PAGE)
147NIL
148
149(ALPHA-CHAR-P #\RETURN)
150NIL
151
152(UPPER-CASE-P #\a)
153NIL
154
155(UPPER-CASE-P #\$)
156NIL
157
158(UPPER-CASE-P #\.)
159NIL
160
161(UPPER-CASE-P #\A)
162T
163
164(UPPER-CASE-P 1)
165ERROR
166
167(UPPER-CASE-P #\\)
168NIL
169
170(UPPER-CASE-P #\5)
171NIL
172
173(UPPER-CASE-P #\))
174NIL
175
176(UPPER-CASE-P #\%)
177NIL
178
179(UPPER-CASE-P #\BACKSPACE)
180NIL
181
182(UPPER-CASE-P #\PAGE)
183NIL
184
185(UPPER-CASE-P #\RETURN)
186NIL
187
188(LOWER-CASE-P #\a)
189T
190
191(LOWER-CASE-P #\$)
192NIL
193
194(LOWER-CASE-P #\.)
195NIL
196
197(LOWER-CASE-P #\A)
198NIL
199
200(LOWER-CASE-P 1)
201ERROR
202
203(LOWER-CASE-P #\\)
204NIL
205
206(LOWER-CASE-P #\5)
207NIL
208
209(LOWER-CASE-P #\))
210NIL
211
212(LOWER-CASE-P #\%)
213NIL
214
215(LOWER-CASE-P #\BACKSPACE)
216NIL
217
218(LOWER-CASE-P #\PAGE)
219NIL
220
221(LOWER-CASE-P #\RETURN)
222NIL
223
224(BOTH-CASE-P #\a)
225T
226
227(BOTH-CASE-P #\$)
228NIL
229
230(BOTH-CASE-P #\.)
231NIL
232
233(BOTH-CASE-P #\A)
234T
235
236(BOTH-CASE-P 1)
237ERROR
238
239(BOTH-CASE-P #\\)
240NIL
241
242(BOTH-CASE-P #\5)
243NIL
244
245(BOTH-CASE-P #\))
246NIL
247
248(BOTH-CASE-P #\%)
249NIL
250
251(BOTH-CASE-P #\BACKSPACE)
252NIL
253
254(BOTH-CASE-P #\PAGE)
255NIL
256
257(BOTH-CASE-P #\RETURN)
258NIL
259
260(DIGIT-CHAR-P #\a)
261NIL
262
263(DIGIT-CHAR-P #\$)
264NIL
265
266(DIGIT-CHAR-P #\.)
267NIL
268
269(DIGIT-CHAR-P #\A)
270NIL
271
272(DIGIT-CHAR-P 1)
273ERROR
274
275(DIGIT-CHAR-P #\\)
276NIL
277
278(DIGIT-CHAR-P #\5)
2795
280
281(DIGIT-CHAR-P #\))
282NIL
283
284(DIGIT-CHAR-P #\%)
285NIL
286
287(DIGIT-CHAR-P #\BACKSPACE)
288NIL
289
290(DIGIT-CHAR-P #\PAGE)
291NIL
292
293(DIGIT-CHAR-P #\RETURN)
294NIL
295
296(DIGIT-CHAR-P #\5 4)
297NIL
298
299(DIGIT-CHAR-P #\5 8)
3005
301
302(DIGIT-CHAR-P #\E 16)
30314
304
305(DIGIT-CHAR-P #\R 35)
30627
307
308(DIGIT-CHAR-P #\5 4)
309NIL
310
311(DIGIT-CHAR-P #\5 5)
312NIL
313
314(DIGIT-CHAR-P #\5 6)
3155
316
317(DIGIT-CHAR-P #\1 2)
3181
319
320(ALPHANUMERICP #\a)
321T
322
323(ALPHANUMERICP #\$)
324NIL
325
326(ALPHANUMERICP #\.)
327NIL
328
329(ALPHANUMERICP #\A)
330T
331
332(ALPHANUMERICP 1)
333ERROR
334
335(ALPHANUMERICP #\\)
336NIL
337
338(ALPHANUMERICP #\5)
339T
340
341(ALPHANUMERICP #\))
342NIL
343
344(ALPHANUMERICP #\%)
345NIL
346
347(ALPHANUMERICP #\BACKSPACE)
348NIL
349
350(ALPHANUMERICP #\PAGE)
351NIL
352
353(ALPHANUMERICP #\RETURN)
354NIL
355
356(ALPHANUMERICP #\5 4)
357ERROR
358
359(ALPHANUMERICP #\5 8)
360ERROR
361
362(ALPHANUMERICP #\E 16)
363ERROR
364
365(ALPHANUMERICP #\R 35)
366ERROR
367
368(CHAR= #\d #\d)
369T
370
371(CHAR/= #\d #\d)
372NIL
373
374(CHAR= #\d #\x)
375NIL
376
377(CHAR/= #\d #\x)
378T
379
380(CHAR= #\d #\D)
381NIL
382
383(CHAR/= #\d #\D)
384T
385
386(CHAR= #\d #\d #\d #\d)
387T
388
389(CHAR/= #\d #\d #\d #\d)
390NIL
391
392(CHAR= #\d #\d #\x #\d)
393NIL
394
395(CHAR/= #\d #\d #\x #\d)
396NIL
397
398(CHAR= #\d #\y #\x #\c)
399NIL
400
401(CHAR/= #\d #\y #\x #\c)
402T
403
404(CHAR= #\d #\c #\d)
405NIL
406
407(CHAR/= #\d #\c #\d)
408NIL
409
410(CHAR< #\d #\x)
411T
412
413(CHAR<= #\d #\x)
414T
415
416(CHAR< #\d #\d)
417NIL
418
419(CHAR<= #\d #\d)
420T
421
422(CHAR< #\a #\e #\y #\z)
423T
424
425(CHAR<= #\a #\e #\y #\z)
426T
427
428(CHAR< #\a #\e #\e #\y)
429NIL
430
431(CHAR<= #\a #\e #\e #\y)
432T
433
434(CHAR> #\e #\d)
435T
436
437(CHAR>= #\e #\d)
438T
439
440(CHAR> #\d #\c #\b #\a)
441T
442
443(CHAR>= #\d #\c #\b #\a)
444T
445
446(CHAR> #\d #\d #\b #\a)
447NIL
448
449(CHAR>= #\d #\d #\b #\a)
450T
451
452(CHAR> #\e #\d #\b #\c #\a)
453NIL
454
455(CHAR>= #\e #\d #\b #\c #\a)
456NIL
457
458(CHAR> #\z #\A)
459T
460
461(CHAR> #\Z #\a)
462NIL
463
464(CHAR< #\9 #\a)
465T
466
467(CHAR> #\9 #\a)
468NIL
469
470(CHAR> #\z #\0)
471T
472
473(CHAR< #\z #\0)
474NIL
475
476(CHAR-EQUAL #\d #\d)
477T
478
479(CHAR-NOT-EQUAL #\d #\d)
480NIL
481
482(CHAR-EQUAL #\d #\x)
483NIL
484
485(CHAR-NOT-EQUAL #\d #\x)
486T
487
488(CHAR-EQUAL #\d #\D)
489T
490
491(CHAR-NOT-EQUAL #\d #\D)
492NIL
493
494(CHAR-EQUAL #\d #\d #\d #\d)
495T
496
497(CHAR-NOT-EQUAL #\d #\d #\d #\d)
498NIL
499
500(CHAR-EQUAL #\d #\d #\x #\d)
501NIL
502
503(CHAR-NOT-EQUAL #\d #\d #\x #\d)
504NIL
505
506(CHAR-EQUAL #\d #\y #\x #\c)
507NIL
508
509(CHAR-NOT-EQUAL #\d #\y #\x #\c)
510T
511
512(CHAR-EQUAL #\d #\c #\d)
513NIL
514
515(CHAR-NOT-EQUAL #\d #\c #\d)
516NIL
517
518(CHAR-LESSP #\d #\x)
519T
520
521(CHAR-NOT-GREATERP #\d #\x)
522T
523
524(CHAR-LESSP #\d #\d)
525NIL
526
527(CHAR-NOT-GREATERP #\d #\d)
528T
529
530(CHAR-LESSP #\a #\e #\y #\z)
531T
532
533(CHAR-NOT-GREATERP #\a #\e #\y #\z)
534T
535
536(CHAR-LESSP #\a #\e #\e #\y)
537NIL
538
539(CHAR-NOT-GREATERP #\a #\e #\e #\y)
540T
541
542(CHAR-GREATERP #\e #\d)
543T
544
545(CHAR-NOT-LESSP #\e #\d)
546T
547
548(CHAR-GREATERP #\d #\c #\b #\a)
549T
550
551(CHAR-NOT-LESSP #\d #\c #\b #\a)
552T
553
554(CHAR-GREATERP #\d #\d #\b #\a)
555NIL
556
557(CHAR-NOT-LESSP #\d #\d #\b #\a)
558T
559
560(CHAR-GREATERP #\e #\d #\b #\c #\a)
561NIL
562
563(CHAR-NOT-LESSP #\e #\d #\b #\c #\a)
564NIL
565
566(CHAR-GREATERP #\z #\A)
567T
568
569(CHAR-GREATERP #\Z #\a)
570T
571
572(CHAR-LESSP #\9 #\a)
573T
574
575(CHAR-GREATERP #\9 #\a)
576NIL
577
578(CHAR-GREATERP #\z #\0)
579T
580
581(CHAR-LESSP #\z #\0)
582NIL
583
584(CHAR-EQUAL #\A #\a)
585T
586
587(CHAR-UPCASE #\a)
588#\A
589
590(CHAR-UPCASE #\A)
591#\A
592
593(CHAR-UPCASE #\5)
594#\5
595
596(CHAR-UPCASE #\;)
597#\;
598
599(CHAR-UPCASE #\=)
600#\=
601
602(CHAR= (CHAR-DOWNCASE (CHAR-UPCASE #\x)) #\x)
603T
604
605(CHAR-DOWNCASE #\A)
606#\a
607
608(CHAR-DOWNCASE #\a)
609#\a
610
611(CHAR-DOWNCASE #\%)
612#\%
613
614(CHAR-DOWNCASE #\+)
615#\+
616
617(CHAR-DOWNCASE #\-)
618#\-
619
620(CHAR= (CHAR-UPCASE (CHAR-DOWNCASE #\X)) #\X)
621T
622
623(DIGIT-CHAR 7)
624#\7
625
626(DIGIT-CHAR 12)
627NIL
628
629(DIGIT-CHAR (QUOTE A))
630ERROR
631
632(DIGIT-CHAR 12 16)
633#\C
634
635(DIGIT-CHAR 6 2)
636NIL
637
638(DIGIT-CHAR 1 2)
639#\1
640
641CHAR-CONTROL-BIT
642#-(or CMU SBCL OpenMCL) 1 #+(or CMU SBCL OpenMCL) ERROR
643
644CHAR-META-BIT
645#-(or CMU SBCL OpenMCL) 2 #+(or CMU SBCL OpenMCL) ERROR
646
647CHAR-SUPER-BIT
648#-(or CMU SBCL OpenMCL) 4 #+(or CMU SBCL OpenMCL) ERROR
649
650CHAR-HYPER-BIT
651#-(or CMU SBCL OpenMCL) 8 #+(or CMU SBCL OpenMCL) ERROR
652
653(char-name #\Space) "Space"
654
655(char-name #\Newline) "Newline"
656
657(let ((wrong-codes nil))
658  (dotimes (code char-code-limit)
659    (let ((c (code-char code)))
660      (unless (and #-CLISP (or (graphic-char-p c) (char-name c))
661                   (or #-CLISP (null (char-name c))
662                       (eql c (name-char (char-name c)))))
663        (push code wrong-codes))))
664  wrong-codes)
665NIL
666
667;; from GCL ansi-test
668(loop :for i :from 0 :below char-code-limit
669  :for x = (code-char i)
670  :unless (or (not (characterp x))
671              (if (or (digit-char-p x) (alpha-char-p x))
672                  (alphanumericp x)
673                  (not (alphanumericp x))))
674  :collect (list i x :digit (digit-char-p x) :alpha (alpha-char-p x)
675                 :alphanumericp (alphanumericp x)))
676nil
677
678;; Check that sys::char-invertcase is an involution
679#+CLISP
680(locally (declare (compile))
681  (loop :for i :from 0 :below char-code-limit
682        :for x = (code-char i)
683        :unless (eq (sys::char-invertcase (sys::char-invertcase x)) x)
684        :collect x))
685#+CLISP
686NIL
687