Index

This index is a unified index for this book and The Scheme Programming Language, 4th Edition (TSPL4). Page numbers prefixed by "t" refer the latter document. Italicized page numbers refer to the primary description of a syntactic form or procedure.

All page numbers appearing here refer to the printed version of these books and also serve as hypertext links to the corresponding locations in the electronic versions of these books.

! (exclamation point), t8
" (double quote), t216
#!r6rs, t456
#n# (graph reference), 3, 286
#% ($primitive), 3, 396
#2% ($primitive), 396
#3% ($primitive), 396
#& (box prefix), 3, 175
#' (syntax), t300
#( (vector prefix), 3, 158
#n( (vector prefix), 3, 158
#, (unsyntax), t305
#,@ (unsyntax-splicing), t305
#: (gensym prefix), 2, 177, 178, 288
#; (datum comment), t455
#n= (graph mark), 3, 286
#[ (record prefix), 3
#\, t211
#\alarm, 3
#\backspace, 3
#\bel, 3
#\delete, 3
#\esc, 3
#\linefeed, 3
#\ls, 3
#\nel, 3
#\newline, 3
#\nul, 3
#\page, 3
#\return, 3
#\rubout, 3
#{ (gensym prefix), 2, 177, 178, 288
#\space, 3
#\tab, 3
#\vt, 3
#` (quasisyntax), t305
#|...|# (block comment), t455
#b (binary), t169
#d (decimal), t169
#f, t7, t36, t143
#false, 4
#o (octal), t169
#nr (radix prefix), 3
#t, t7, t36, t143
#true, 4
#nvfl( (flvector prefix), 165
#vfl( (flvector prefix), 165
#nvfx( (fxvector prefix), 161
#vfx( (fxvector prefix), 161
#nvs( (stencil vector prefix), 172
#x (hexadecimal), t169
$primitive#% ), 396
$primitive#2% ), 396
$primitive#3% ), 396
$system, 346
$system module, 345
&assertion, t366
&condition, t362
&continuation, 361
&error, t367
&format, 360
&i/o, t371
&i/o-decoding, t375
&i/o-encoding, t376
&i/o-file-already-exists, t374
&i/o-file-does-not-exist, t374
&i/o-file-is-read-only, t374
&i/o-file-protection, t373
&i/o-filename, t373
&i/o-invalid-position, t372
&i/o-port, t375
&i/o-read, t372
&i/o-write, t372
&implementation-restriction, t369
&irritants, t368
&lexical, t370
&message, t368
&no-infinities, t376
&no-nans, t377
&non-continuable, t369
&serious, t366
&source, 360
&syntax, t370
&undefined, t371
&violation, t366
&warning, t367
&who, t369
' (quote), t17, t22, t59, t141
(), t7, t19
(chezscheme csv7) library, 310
(chezscheme) library, 310
(scheme csv7) library, 310
(scheme) library, 310
*, t16, t172
+, t16, t171
, (unquote), t142
,@ (unquote-splicing), t142
-, t16, t172
-- command-line option, 30
--boot command-line option, 30, 30, 382
--compact command-line option, 30
--compile-imported-libraries command-line option, 30, 322
--debug-on-exception command-line option, 10, 30, 41, 362, 362
--disable-library-timestamps command-line option, 324
--eedisable command-line-option, 30
--eehistory command-line-option, 30, 468
--enable-object-counts command-line-option, 30
--heap command-line option, 30
--help command-line option, 30
--import-notify command-line option, 18, 30
--libdirs command-line option, 21, 30, 322
--libexts command-line option, 21, 30, 322
--optimize-level command-line option, 23, 30, 395
--program command-line option, 10, 21, 30, 41, 311, 377, 396, 417
--quiet command-line option, 30
--retain-static-relocation command-line option, 30, 53, 54
--saveheap command-line option, 30
--script command-line option, 10, 20, 30, 41, 377, 417, 418
--verbose command-line option, 30
--version command-line option, 30
->, t8
-1+, 241
-b command-line option, 30, 30, 382
-c command-line option, 30
-h command-line option, 30
-q command-line option, 30
-s command-line option, 30
. (dot), t19, t460
... (ellipses), 287, 489
... (ellipsis), t61, t294, t297
/, t16, t172
; (comment), t7, t455
<, 241, t170
<=, 241, t170
=, 241, t170
=>, t111, t112
>, 241, t170
>=, 241, t170
? (question mark), t8, t37
[, 279
], 279
_ (underscore), t61, t296, t315
_ (underscore), t294, t297
` (quasiquote), t142
1+, 241
1-, 241
abort, 416
abort-handler, 416
abs, t34, t178, t183
abstract objects, t53, t408
acos, t185
acosh, 244
actual parameters, t27, t92
add-duration, 422
add-duration!, 422
add-prefix, 345
add1, 241
Algol 60, t6
alias, 121, 345, 348
and, 490, t37, t62, t110
andmap, 133, 491
angle, t183
annotation-expression, 352
annotation-option-set, 352
annotation-options, 354
annotation-source, 352
annotation-stripped, 352
annotation?, 352
annotations, 349
append, t46, t160
append!, 151
applications, 24
apply, t107
apropos, 370
apropos-list, 369
arbitrary precision, t167
ash, 234
asin, t185
asinh, 244
assert, t359
assert-unreachable, 363
assertion-violation, t358
assertion-violation?, t366
assertion-violationf, 360
assignable variables, 41
assignment, t102
assignments, 124, 126, t47, t102
assoc, t165
association list, t165, t166, t243, t404
assp, t166
assq, t165
assv, t165
atan, t185
atanh, 244
atom?, 147, t41
auxiliary keywords, 17, t61, t294
base case, t41
base-exception-handler, 11, 362
be-like-begin, t313
begin, 121, t51, t60, t101, t108
bignum, 219, 220
bignum?, 220
binary port, t257
binary trees, t155
binary-port-input-buffer, 252
binary-port-input-count, 253
binary-port-input-index, 252
binary-port-input-size, 252
binary-port-output-buffer, 253
binary-port-output-count, 254
binary-port-output-index, 253
binary-port-output-size, 253
binary-port?, t270
binding, t4
bitwise-and, t186
bitwise-arithmetic-shift, t190
bitwise-arithmetic-shift-left, t189
bitwise-arithmetic-shift-right, t189
bitwise-bit-count, t187
bitwise-bit-field, t189
bitwise-bit-set?, t188
bitwise-copy-bit, t188
bitwise-copy-bit-field, t189
bitwise-first-bit-set, t187
bitwise-if, t186
bitwise-ior, t186
bitwise-length, t187
bitwise-not, t186
bitwise-reverse-bit-field, t191
bitwise-rotate-bit-field, t190
bitwise-xor, t186
black-box, 435
block buffering, t258
block comment ( #|...|# ), t455
block profiling, 403
block structure, t4
block-read, 268
block-write, 275
boolean, 63, 67
boolean syntax, t457
boolean values, t7
boolean=?, t243
boolean?, t150
boot files, 28, 31
bound-identifier=?, t302
box, 175
box-cas!, 176
box-immobile, 458
box-immutable, 175, 177
box?, 175
boxes, 175
brackets ( [ ] ), t7, t155
break, 364, t308
break-handler, 364
broadcast streams, 245
buffer modes, t258
buffer-mode, t261
buffer-mode?, t262
bwp-object?, 451
bytes-allocated, 428
bytes-deallocated, 428
bytes-finalized, 428
bytevector, 168
bytevector syntax, t461
bytevector->immutable-bytevector, 168, 171
bytevector->s8-list, 168
bytevector->sint-list, t238
bytevector->string, t286
bytevector->u8-list, t232
bytevector->uint-list, t238
bytevector-compress, 171
bytevector-copy, t229
bytevector-copy!, t230
bytevector-fill!, t229
bytevector-ieee-double-native-ref, t239
bytevector-ieee-double-native-set!, t239
bytevector-ieee-double-ref, t240
bytevector-ieee-double-set!, t240
bytevector-ieee-single-native-ref, t239
bytevector-ieee-single-native-set!, t239
bytevector-ieee-single-ref, t240
bytevector-ieee-single-set!, t240
bytevector-length, t229
bytevector-reference*-ref, 95
bytevector-reference-ref, 95
bytevector-reference-set!, 94
bytevector-s16-native-ref, t232
bytevector-s16-native-set!, t233
bytevector-s16-ref, t235
bytevector-s16-set!, t236
bytevector-s24-ref, 170
bytevector-s24-set!, 170
bytevector-s32-native-ref, t232
bytevector-s32-native-set!, t233
bytevector-s32-ref, t235
bytevector-s32-set!, t236
bytevector-s40-ref, 170
bytevector-s40-set!, 170
bytevector-s48-ref, 170
bytevector-s48-set!, 170
bytevector-s56-ref, 170
bytevector-s56-set!, 170
bytevector-s64-native-ref, t232
bytevector-s64-native-set!, t233
bytevector-s64-ref, t235
bytevector-s64-set!, t236
bytevector-s8-ref, t231
bytevector-s8-set!, t231
bytevector-sint-ref, t237
bytevector-sint-set!, t238
bytevector-truncate!, 169
bytevector-u16-native-ref, t232
bytevector-u16-native-set!, t233
bytevector-u16-ref, t235
bytevector-u16-set!, t236
bytevector-u24-ref, 170
bytevector-u24-set!, 170
bytevector-u32-native-ref, t232
bytevector-u32-native-set!, t233
bytevector-u32-ref, t235
bytevector-u32-set!, t236
bytevector-u40-ref, 170
bytevector-u40-set!, 170
bytevector-u48-ref, 170
bytevector-u48-set!, 170
bytevector-u56-ref, 170
bytevector-u56-set!, 170
bytevector-u64-native-ref, t232
bytevector-u64-native-set!, t233
bytevector-u64-ref, t235
bytevector-u64-set!, t236
bytevector-u8-ref, t230
bytevector-u8-set!, t231
bytevector-uint-ref, t237
bytevector-uint-set!, t238
bytevector-uncompress, 171
bytevector=?, t229
bytevector?, t155
C, t393
C (programming language), 57, 59, 99, 100, 101
C preprocessor macros, 101
C-callable library functions, 101
caaaar, t157
caaadr, t157
caaar, t157
caadar, t157
caaddr, t157
caadr, t157
caar, t157
caar, cadr, ..., cddddr, t34
cadaar, t157
cadadr, t157
cadar, t157
caddar, t157
cadddr, t157
caddr, t157
cadr, t31, t32, t34, t157
café, 413
call-by-name, t408
call-by-reference, 175
call-by-value, t407
call-in-continuation, 139
call-with-bytevector-output-port, t266
call-with-current-continuation, t123, t426
call-with-immediate-continuation-mark, 139
call-with-input-file, 264, t281
call-with-output-file, 272, t282
call-with-port, t272
call-with-string-output-port, t267
call-with-values, t130, t131
call/1cc, 134
call/cc, t74, t122, t123, t126, t133, t425, t426
car, t18, t155, t156
car-cas!, 152
case, 131, t55, t113, t306
case-lambda, 34, 437, t94
case-sensitive, 285
cd, 294
cdaaar, t157
cdaadr, t157
cdaar, t157
cdadar, t157
cdaddr, t157
cdadr, t157
cdar, t157
cddaar, t157
cddadr, t157
cddar, t157
cdddar, t157
cddddr, t157
cdddr, t157
cddr, t31, t34, t157
cdr, t18, t38, t155, t156
cdr-cas!, 152
ceiling, t177
cfl*, 229
cfl+, 229
cfl-, 229
cfl-conjugate, 230
cfl-imag-part, 229
cfl-magnitude-squared, 230
cfl-real-part, 229
cfl/, 229
cfl=, 229
cflonum, 220
cflonum?, 221
cflonums, 228
char, 63, 67
char-, 153
char->integer, t215
char-alphabetic?, t213
char-ci<=?, 153, t212
char-ci<?, 153, t212
char-ci=?, 153, t212
char-ci>=?, 153, t212
char-ci>?, 153, t212
char-downcase, t214
char-extended-pictographic?, 154
char-foldcase, t215
char-general-category, t214
char-grapheme-break-property, 154
char-grapheme-step, 154
char-indic-break-property, 155
char-lower-case?, t213
char-name, 152, 284
char-numeric?, t213
char-ready?, 268
char-title-case?, t213
char-titlecase, t214
char-upcase, t214
char-upper-case?, t213
char-whitespace?, t213
char<=?, 153, t212
char<?, 153, t212
char=?, 153, t212
char>=?, 153, t212
char>?, 153, t212
char?, t154
character syntax, t457
characters, t211
Chez Scheme, tix, t42
CHEZSCHEMELIBDIRS, 22
CHEZSCHEMELIBEXTS, 22
child type, t325
chmod, 297
circular lists, t156
clear-input-port, 258
clear-output-port, 259
close-input-port, t285
close-output-port, t285
close-port, t270
codec, t257
collect, 443, 445
collect-generation-radix, 444, 446
collect-maximum-generation, 443, 447
collect-maximum-generation-threshold-factor, 444, 446
collect-notify, 446
collect-rendezvous, 446
collect-request-handler, 443, 447, 456
collect-trip-bytes, 443, 446
collections, 429
command-line, 417, 418, t350
command-line options, 30
command-line-arguments, 417, 418
comments, t7, t455
Common Lisp, t6
commonization-level, 401
compilation, 375
compile, 371, 397
compile-file, 10, 26, 375, 395
compile-file-message, 399
compile-imported-libraries, 18, 19, 322
compile-interpret-simple, 397
compile-library, 19, 23, 26, 373, 377
compile-library-handler, 378
compile-omit-concatenate-support, 394
compile-port, 380
compile-procedure-realm, 384
compile-profile, 404, 407
compile-program, 19, 20, 23, 26, 312, 373, 377
compile-program-handler, 378
compile-script, 21, 26, 376
compile-time-value-value, 336
compile-time-value?, 336
compile-to-file, 378, 382
compile-to-port, 381
compile-whole-library, 373, 380
compile-whole-program, 28, 373, 379, 398
compiler, t4
complete, see engines
complex numbers, 228, t167, t412
complex?, t151, t167
compose, t34
compound condition, t362
compress-format, 171, 248, 259, 272, 294
compress-level, 171, 248, 259, 260, 272, 294
compute-composition, 55
compute-size, 42, 54
compute-size-increments, 56
concatenate-object-files, 382
concatenated streams, 245
cond, 490, t39, t44, t111, t304
condition, t362
condition object, t361
condition type, t361
condition-accessor, t365
condition-broadcast, 477
condition-continuation, 361
condition-irritants, t368
condition-message, t368
condition-name, 477
condition-predicate, t365
condition-signal, 477
condition-wait, 476
condition-who, t369
condition?, t362
conditionals, t109
conditions, t357
conjugate, 230, 243
cons, t19, t156
cons cell, t155
cons*, t158
consing, t19
console-error-port, 271
console-input-port, 262, 414
console-output-port, 270, 414
constant, t141
constants, t21, t141
constructor, 206
continuation-condition?, 361
continuation-marks->iterator, 138
continuation-marks->list, 137
continuation-marks-first, 137
continuation-marks?, 136
continuation-next-marks, 136
continuation-passing style, t78, t418
continuations, t5, t73, t124, t421
control structures, t107
copy propagation, 22
copy-environment, 369
copy-time, 422
core syntactic forms, t4, t22, t59, t404
cos, t185
cosh, 244
cost-center-allocation-count, 434
cost-center-instruction-count, 434
cost-center-name, 435
cost-center-time, 435
cost-center?, 434
cp0-effort-limit, 399
cp0-outer-unroll-limit, 399
cp0-score-limit, 399
CPS, t78
cpu-time, 427
create-exception-state, 363
creating subprocesses, 57
critical-section, 366
current exception handler, t357
current-continuation-marks, 136
current-date, 423
current-directory, 294
current-errno-source, 101
current-error-port, 271, t263
current-eval, 371
current-exception-state, 362
current-expand, 385
current-generate-id, 392
current-input-port, 263, t263
current-locate-source-object-source, 355
current-make-source-object, 353
current-memory-bytes, 428
current-output-port, 270, t263
current-time, 420
current-transcoder, 250
custom-port-buffer-size, 262
customization, 24
cyclic lists, t56
d (double), t169
data, t141
date->time-utc, 426
date-and-time, 426
date-day, 424
date-dst?, 425
date-hour, 424
date-minute, 424
date-month, 424
date-nanosecond, 424
date-second, 424
date-week-day, 425
date-year, 424
date-year-day, 425
date-zone-name, 425
date-zone-offset, 424
date?, 424
datum, 331
datum comment ( #; ), t455
datum syntax, t455, t456
datum->syntax, 497, t308, t317, t320
datum->syntax-object, 331
debug, 41
debug-condition, 362
debug-level, 396
debug-on-exception, 10, 362
debugger, 364
decode-float, 227
default protocol, t327
default-exception-handler, 361
default-library-search-handler, 323
default-prompt-and-read, 415
default-record-equal-procedure, 195, 198
default-record-hash-procedure, 196, 199
define, 121, 125, t30, t81, t100
define-condition-type, t364
define-enumeration, t250
define-ftype, 79
define-integrable, 328, t315
define-object, t408
define-property, 336
define-record, 199, 202
define-record-type, 194, 195, t323, t328
define-structure, 495, t318
define-syntax, 121, 127, t61, t291, t292, t389
define-top-level-syntax, 127
define-top-level-value, 125
define-values, 122
defining syntactic extensions, t60
definitions, 121
defun syntax, t33, t60
delay, t128
delayed evaluation, t408
delete-directory, 296
delete-file, 296, t286
delq!, t54
denominator, t181
derived Scheme-object pointer type, 83
describe-segment, t132
directory-list, 294
directory-separator, 297
directory-separator?, 297
disable-interrupts, 365, 446
display, t285, t397
display-condition, 361
display-statistics, 427
display-string, 275
distributing applications, 24
div, t175
div-and-mod, t175
div0, t176
div0-and-mod0, t176
divisors, t115, t116
do, 35, t115, t312
dot ( . ), t19, t460
dotted pair, t20, t155
double, 64, 66, 68, t27, t33
double quotes, t216
double-any, t30
double-cons, t27, t33
double-float, 62, 66
doubler, t33
doubly recursive, t70
drop-prefix, 345
dxdy, t131
dynamic allocation, t3
dynamic-wind, 135, t124
echo streams, 245
ee-accept, 469
ee-auto-indent, 461, 464
ee-auto-paren-balance, 462, 464
ee-backward-char, 464
ee-backward-delete-char, 466
ee-backward-delete-sexp, 467
ee-backward-page, 466
ee-backward-sexp, 466
ee-backward-word, 466
ee-beginning-of-entry, 465
ee-beginning-of-line, 465
ee-bind-key, 463
ee-command-repeat, 470
ee-common-identifiers, 462, 468
ee-compose, 463, 471
ee-default-repeat, 462, 470
ee-delete-between-point-and-mark, 467
ee-delete-char, 466
ee-delete-entry, 467
ee-delete-line, 466
ee-delete-sexp, 467
ee-delete-to-eol, 467
ee-end-of-entry, 465
ee-end-of-line, 465
ee-eof, 469
ee-eof/delete-char, 470
ee-exchange-point-and-mark, 465
ee-flash-matching-delimiter, 465
ee-flash-parens, 462, 464
ee-forward-char, 464
ee-forward-page, 466
ee-forward-sexp, 466
ee-forward-word, 466
ee-goto-matching-delimiter, 465
ee-history-bwd, 465, 468
ee-history-bwd-contains, 469
ee-history-bwd-prefix, 468
ee-history-fwd, 465, 468
ee-history-fwd-contains, 469
ee-history-fwd-prefix, 468
ee-history-limit, 462
ee-id-completion, 467
ee-id-completion/indent, 467, 470
ee-indent, 469
ee-indent-all, 469
ee-insert-paren, 464
ee-insert-self, 463
ee-newline, 464
ee-newline/accept, 470
ee-next-id-completion, 468
ee-next-id-completion/indent, 468, 470
ee-next-line, 465
ee-noisy, 462
ee-open-line, 464
ee-paren-flash-delay, 462, 464, 465
ee-previous-line, 465
ee-redisplay, 469
ee-reset-entry, 467
ee-set-mark, 470
ee-standard-indent, 461
ee-string-macro, 463, 471
ee-suspend-process, 470
ee-yank-kill-buffer, 464
ee-yank-selection, 464
ellipses ( ... ), 287, 489
ellipsis ( ... ), t61, t294
else, 131, 132, t111, t112, t113
empty list, t7, t19
enable-arithmetic-left-associative, 398
enable-cross-library-optimization, 398
enable-error-source-expression, 398
enable-interrupts, 365
enable-object-backreferences, 432
enable-object-counts, 431
enable-type-recovery, 401
enable-unsafe-application, 398
enable-unsafe-variable-reference, 398
endianness, t228
engine-block, 144
engine-return, 145
engines, 139, 140, t421
enum-set->list, t252
enum-set-complement, t254
enum-set-constructor, t251
enum-set-difference, t253
enum-set-indexer, t254
enum-set-intersection, t253
enum-set-member?, t253
enum-set-projection, t254
enum-set-subset?, t252
enum-set-union, t253
enum-set-universe, t252
enum-set=?, t252
enum-set?, 147
enumerate, 149
environment, t137
environment, t404
environment-mutable?, 367
environment-symbols, 369
environment?, 367
eof object, t257
eof-object, t273
eof-object?, t257, t273
eol style, t257
eol-style, t259
ephemeron pairs, 449
ephemeron-cons, 450
ephemeron-pair?, 451
eq-hashtable-cell, 190
eq-hashtable-contains?, 189
eq-hashtable-delete!, 191
eq-hashtable-ephemeron?, 188
eq-hashtable-ref, 188
eq-hashtable-ref-cell, 190
eq-hashtable-set!, 188
eq-hashtable-try-atomic-cell, 190
eq-hashtable-update!, 189
eq-hashtable-weak?, 188
eq-hashtable?, 188
eq?, t143
equal-hash, 195, t245
equal-hash on records, 195
equal?, 195, t148
equal? on records, 195
equivalence predicates, t143
eqv?, t38, t146
error, t358
error handling mode, t258
error-handling-mode, t260
error?, t367
errorf, 360
eval, 370, 371, t136
eval-syntax-expanders-when, 391
eval-when, 387, 395
even?, t47, t66, t81, t174
exact, 225, t180
exact complexnum, 219
exact->inexact, t181
exact-integer-sqrt, t184
exact?, t167, t170
exactness, t167, t180
exactness preserving, t167
except, 345
except import set, t346
exception handling, 359
exceptions, 4, t9, t357
exclamation point ( ! ), t8
exclusive-cond, 131
exists, t119
exit, 416, t350
exit-handler, 416
exp, t184
expand, 385, 402, 414
expand-omit-library-invocations, 393
expand-output, 385, 402
expand-time generativity, 200
expand/optimize, 386, 400, 402
expand/optimize-output, 386, 402
expansion, t59
expire, see engines
export, 318, t345
export level, t345
expression-editor, 461
expressions, t7
expt, t179
expt-mod, 242
extend-syntax, 489
extended examples, t381
f (single), t169
factor, t71, t72, t73
factorial, t68, t75, t116
false, t7, t36
fasl-compressed, 294
fasl-file, 294
fasl-read, 293
fasl-strip-options, 383
fasl-write, 292
fast Fourier transform (FFT), t412
fast loading format, 292
fenders, 489, 491, t299, t301
fibonacci, 141, t69, t102, t116, t422
Fibonacci numbers, t69, t102
fields, t331
file, t257
file-access-time, 295
file-buffer-size, 262
file-change-time, 295
file-directory?, 295
file-exists?, 295, t286
file-length, 256
file-modification-time, 295
file-options, t261
file-port?, 262
file-position, 258
file-regular?, 295
file-symbolic-link?, 295
filter, t164
find, t165
finite?, t174
first-class data values, t3
first-class procedures, t5
fixnum, 63
fixnum, 219, 220, t192
fixnum->flonum, t211
fixnum-width, t193
fixnum?, t193
fl*, t207
fl+, t206
fl-, t206
fl-make-rectangular, 228
fl/, t207
fl<, 226
fl<=, 226
fl<=?, t203
fl<?, t203
fl=, 226
fl=?, t203
fl>, 226
fl>=, 226
fl>=?, t203
fl>?, t203
flabs, t209
flacos, t210
flasin, t210
flatan, t210
flbit-field, 228
flceiling, t208
flcos, t210
fldenominator, t209
fldiv, t207
fldiv-and-mod, t207
fldiv0, t208
fldiv0-and-mod0, t208
fleven?, t205
flexp, t209
flexpt, t210
flfinite?, t205
flfloor, t208
flinfinite?, t205
flinteger?, t204
flip-flop, t102
fllog, t209
fllp, 227
flmax, t205
flmin, t205
flmod, t207
flmod0, t208
flnan?, t205
flnegative?, t204
flnonnegative?, 226
flnonpositive?, 226
flnumerator, t209
float, 64, 66, 68
floating point, t167
flodd?, t205
flonum, 219, 220, t202
flonum->fixnum, 225
flonum?, t203
floor, t177
flpositive?, t204
flround, t208
flsin, t210
flsingle, 227
flsqrt, t210
fltan, t210
fltruncate, t208
fluid binding, 124, t125
fluid-let, 124
fluid-let-syntax, 327, 329
flush-output-port, 259, t280
flvector, 165
flvector->list, 166
flvector-copy, 167
flvector-copy!, 167
flvector-fill!, 166
flvector-length, 166
flvector-ref, 166
flvector-set!, 166
flvector?, 165
flvectors, 165
flzero?, t204
fold-left, t120
fold-right, t121
folding, t120, t121
for-all, t119
for-each, t118
force, t128
foreign entry, 59
foreign types, 79
foreign-address-name, 97
foreign-alignof, 79
foreign-alloc, 76
foreign-callable, 72, 85
foreign-callable-code-object, 75
foreign-callable-entry-point, 73, 75
foreign-entry, 97
foreign-entry?, 96, 101
foreign-free, 77
foreign-procedure, 59, 71, 91
foreign-procedure interface, 59
foreign-ref, 77
foreign-set!, 78
foreign-sizeof, 79
fork-thread, 474
formal parameters, t26, t29, t92
format, 281, 493
format-condition?, 360
formatted error messages, 360
formatted output, 281, t401
fprintf, 283, t401
Fred, 181
free variable, t28
free-identifier=?, 17, t302
frequency, t393
fresh-line, 276
ftype, 65, 69, 70
ftype subtyping, 84
ftype-&ref, 88
ftype-any-ref, 91
ftype-any-set!, 91
ftype-guardian, 456, 457, 479, 480
ftype-init-lock!, 478
ftype-lock!, 478
ftype-locked-decr!, 479, 480
ftype-locked-incr!, 479, 480
ftype-pointer, 65
ftype-pointer, 69
ftype-pointer->sexpr, 92
ftype-pointer-address, 87
ftype-pointer-ftype, 92
ftype-pointer-null?, 88
ftype-pointer=?, 88
ftype-pointer?, 87
ftype-ref, 89
ftype-scheme-object-pointer, 65, 66
ftype-scheme-object-pointer, 69
ftype-scheme-object-pointer-object, 87
ftype-scheme-object-pointer-offset, 87
ftype-scheme-object-pointer?, 87
ftype-set!, 89
ftype-sizeof, 84
ftype-spin-lock!, 478
ftype-unlock!, 478
ftypes, 79
function ftype, 80, 85, 86, 91
fx*, 223, t195
fx*/carry, t197
fx*/wraparound, 224
fx+, 222, t195
fx+/carry, t197
fx+/wraparound, 224
fx-, 223, t195
fx-/carry, t197
fx-/wraparound, 224
fx/, 223
fx<, 221
fx<=, 221
fx<=?, t193
fx<?, t193
fx=, 221
fx=?, t193
fx>, 221
fx>=, 221
fx>=?, t193
fx>?, t193
fx1+, 224
fx1-, 224
fxabs, 225
fxand, t197
fxarithmetic-shift, t201
fxarithmetic-shift-left, t201
fxarithmetic-shift-right, t201
fxbit-count, t198
fxbit-field, t200
fxbit-set?, t199
fxcopy-bit, t200
fxcopy-bit-field, t200
fxdiv, t196
fxdiv-and-mod, t196
fxdiv0, t196
fxdiv0-and-mod0, t196
fxeven?, t194
fxfirst-bit-set, t199
fxif, t198
fxior, t197
fxlength, t198
fxlogand, 235
fxlogbit?, 236
fxlogbit0, 237
fxlogbit1, 237
fxlogior, 235
fxlognot, 236
fxlogor, 235
fxlogtest, 237
fxlogxor, 235
fxmax, t195
fxmin, t195
fxmod, t196
fxmod0, t196
fxmodulo, 225
fxnegative?, t194
fxnonnegative?, 222
fxnonpositive?, 222
fxnot, t197
fxodd?, t194
fxpopcount, 239
fxpopcount16, 239
fxpopcount32, 239
fxpositive?, t194
fxquotient, 224
fxremainder, 224
fxreverse-bit-field, t202
fxrotate-bit-field, t201
fxsll, 238
fxsll/wraparound, 224
fxsra, 238
fxsrl, 238
fxvector, 162
fxvector->list, 163
fxvector-copy, 164
fxvector-copy!, 164
fxvector-fill!, 163
fxvector-length, 162
fxvector-ref, 163
fxvector-set!, 163
fxvector?, 162
fxvectors, 161
fxxor, t197
fxzero?, t194
garbage collector, 443, t3
gcd, t179
generate-allocation-counts, 433
generate-covin-files, 356, 403, 408
generate-inspector-information, 27, 397
generate-instruction-counts, 433
generate-interrupt-trap, 396
generate-procedure-source-information, 397
generate-profile-forms, 408
generate-temporaries, t310
generate-wpo-files, 379, 398
generated symbols, 177
generative, t324
generativity of record definitions, 200
generic port, 245, 251
gensym, 177, 179, 288, 492
gensym->unique-string, 179
gensym-count, 179
gensym-prefix, 179
gensym?, 179
gensyms, 177
get-bytevector-all, t275
get-bytevector-n, t274
get-bytevector-n!, t274
get-bytevector-some, t275
get-bytevector-some!, 266
get-char, t275
get-datum, t278
get-datum/annotations, 351, 354
get-hash-table, 488
get-initial-thread, 474
get-line, t277
get-mode, 297
get-output-string, 261
get-process-id, 441, 474
get-property, 337
get-registry, 441
get-source-table!, 356, 357, 408
get-string-all, t277
get-string-n, t276
get-string-n!, t276
get-string-some, 265
get-string-some!, 265
get-thread-id, 474
get-u8, t274
getenv, 441
getprop, 180
getq, t54
goodbye, t41
greatest-fixnum, t193
guard, t361
guardian?, 456, 480
guardians, 449
half, 33
hare and tortoise, t56, t66
hash-table-for-each, 488
hash-table-map, 488
hash-table?, 487
hashtable-cell, 183
hashtable-cells, 186
hashtable-clear!, t249
hashtable-contains?, t246
hashtable-copy, t248
hashtable-delete!, t248
hashtable-entries, 185, t250
hashtable-ephemeron?, 187
hashtable-equivalence-function, t245
hashtable-hash-function, t245
hashtable-keys, 184, t249
hashtable-mutable?, t245
hashtable-ref, t246
hashtable-ref-cell, 184
hashtable-set!, t246
hashtable-size, t248
hashtable-update!, t247
hashtable-values, 185
hashtable-weak?, 187
hashtable?, t155
hashtables, t243
heap files, 31
heap-reserve-ratio, 448
i/o-decoding-error?, t375
i/o-encoding-error-char, t376
i/o-encoding-error?, t376
i/o-error-filename, t373
i/o-error-port, t375
i/o-error-position, t372
i/o-error?, t371
i/o-file-already-exists-error?, t374
i/o-file-does-not-exist-error?, t374
i/o-file-is-read-only-error?, t374
i/o-file-protection-error?, t373
i/o-filename-error?, t373
i/o-invalid-position-error?, t372
i/o-port-error?, t375
i/o-read-error?, t372
i/o-write-error?, t372
iconv-codec, 250, 277
identifier-syntax, t291, t297, t307, t316, t317
identifier?, t301
identifiers, t6
ieee, 346
ieee module, 345
ieee-environment, 346, 368
if, t35, t36, t39, t51, t59, t109
imag-part, t182
imaginary numbers, 228
immutability of exports, t349
immutable, t331
immutable, 206
immutable boxes, 175, 177
immutable bytevectors, 168, 171
immutable strings, 155, 157
immutable vectors, 158, 161
immutable-box?, 176
immutable-bytevector?, 171
immutable-string?, 157
immutable-vector, 158, 161
immutable-vector-append, 161
immutable-vector-copy, 161
immutable-vector-set/copy, 161
immutable-vector?, 160
implementation-restriction-violation?, t369
implicit begin, t109
implicit-exports, 320
import, 121, 309, 314, 321, t345
import level, t345
import spec, t345, t346
import-notify, 18, 323
import-only, 121, 314
improper list, t19, t155
in-place-minimum-generation, 448
include, 322, 332, t309
indirect exports, t349
indirect-export, 319
inexact, t180
inexact complexnum, 219
inexact->exact, t181
inexact?, t167, t170
infinite?, t174
inheritance, t412
inheritance in records, 200, 203, t325
initial-bytes-allocated, 428
INITLOCK, 114
inlining, 22
input port, t257
input-port-ready?, 58, 267
input-port?, t270
inspect, 42
inspect/object, 47
inspector, 41
int, 62, 67
integer->char, t215
integer-16, 61, 66
integer-32, 62, 66
integer-64, 62, 66
integer-8, 61, 66
integer-divide, t79
integer-length, 242
integer-valued?, t153
integer?, t151, t167
integers, t167
integrable procedures, 328, t315
interaction environment, 14
interaction-environment, 15, 368
interactive top level, 14
interactive?, 441
internal definitions, t81, t92
internal state, t49
internal-defines-as-letrec*, 122
interpret, 371, t404
interpreter, t4, t404
interrupts, 363
intraline whitespace, t455
invoke-library, 321
iota, 149
iptr, 63, 67
irritants-condition?, t368
isqrt, 242
iteration, t5, t45, t68, t114, t115, t117, t118, t120, t121, t122
keep-live, 448
kernel, 24
keyboard-interrupt-handler, 364
keyword definition, 121
keywords, t4, t61, t291
l (long), t169
lambda, 33, t26, t29, t59, t92, t93
lambda*, t94
last-pair, 148
latin-1, t257
latin-1-codec, t259
lazy, t51
lazy evaluation, t51, t127
lcm, t179
least-fixnum, t193
length, t42, t159
let, 34, 490, t23, t28, t65, t95, t114
let*, 490, t64, t96
let*-values, t99, t134
let-bound variables, t23
let-syntax, 121, t291, t293, t314
let-values, t99, t134, t310
letrec, t65, t81, t97, t310
letrec*, t98
letrec-syntax, 121, t291, t293, t314
lexical scoping, t4, t5, t25, t63
lexical-violation?, t370
libraries, 17, 23, 309, t343
library, 312
library body, t348
library version, t344
library version reference, t347
library-directories, 18, 21, 322, 373
library-exports, 324
library-extensions, 18, 21, 322
library-list, 324
library-object-filename, 20, 324
library-requirements, 20, 324
library-requirements-options, 325
library-search-handler, 323
library-timestamp-mode, 323
library-version, 324
light-weight threads, t421
line buffering, t258
line ending, t455
Lisp, tix, t6
lisp-cdr, t38
list, t20, t31, t32, t158
list constants, t7
list syntax, t460
list*, 149
list->flvector, 167
list->fxvector, 164
list->string, t223
list->vector, t226
list-assuming-immutable?, 148
list-copy, 149, t43
list-head, 148
list-ref, t159
list-sort, t167, t387
list-tail, t160
list?, t56, t66, t67, t81, t158
lists, t17, t18, t155
literal-identifier=?, 334
literals, 329, t294
load, 10, 121, 372, 376, t13
load-compiled-from-port, 374
load-library, 312, 372
load-program, 311, 321, 373
load-shared-object, 97
local variable bindings, t95
locate-source, 355
locate-source-object-source, 355
lock-object, 73, 110, 457
locked-object?, 458
LOCKED_DECR, 114
LOCKED_INCR, 114, 480
locks, 477
log, t184
logand, 231
logbit?, 232
logbit0, 234
logbit1, 234
logior, 231
lognot, 232
logor, 231
logtest, 233
logxor, 232
long, 62, 67
long-long, 63, 67
lookahead-char, t275
lookahead-u8, t274
loop, t308
looping, t5
machine-type, 384
macros, t291
magnitude, 230, t178, t183
magnitude-squared, 230, 243
main.c, 24
make-annotation, 349, 351
make-arity-wrapper-procedure, 216
make-assertion-violation, t366
make-boot-file, 29, 382
make-boot-header, 383
make-bytevector, t228
make-codec-buffer, 251
make-compile-time-value, 335
make-condition, 476
make-continuation-condition, 361
make-cost-center, 434
make-counter, t50, t54
make-custom-binary-input-port, t267
make-custom-binary-input/output-port, t267
make-custom-binary-output-port, t267
make-custom-textual-input-port, t268
make-custom-textual-input/output-port, t268
make-custom-textual-output-port, t268
make-date, 423
make-engine, 140
make-enumeration, t251
make-ephemeron-eq-hashtable, 187
make-ephemeron-eqv-hashtable, 187
make-ephemeron-hashtable, 187
make-eq-hashtable, t243
make-eqv-hashtable, t244
make-error, t367
make-flvector, 165
make-format-condition, 360
make-ftype-pointer, 85
make-ftype-scheme-object-pointer, 86
make-fxvector, 162
make-guardian, 452, 480
make-hash-table, 487
make-hashtable, t244
make-i/o-decoding-error, t375
make-i/o-encoding-error, t376
make-i/o-error, t371
make-i/o-file-already-exists-error, t374
make-i/o-file-does-not-exist-error, t374
make-i/o-file-is-read-only-error, t374
make-i/o-file-protection-error, t373
make-i/o-filename-error, t373
make-i/o-invalid-position-error, t372
make-i/o-port-error, t375
make-i/o-read-error, t372
make-i/o-write-error, t372
make-immobile-bytevector, 458
make-immobile-reference-bytevector, 94
make-immobile-vector, 458
make-implementation-restriction-violation, t369
make-input-port, 251
make-input/output-port, 251
make-irritants-condition, t368
make-lexical-violation, t370
make-list, 149, t46, t94
make-message-condition, t368
make-mutex, 475
make-no-infinities-violation, t376
make-no-nans-violation, t377
make-non-continuable-violation, t369
make-object-finder, 42, 53
make-output-port, 251
make-parameter, 436
make-pare, 495
make-phantom-bytevector, 459
make-polar, t183
make-promise, t129
make-pseudo-random-generator, 239
make-queue, t54
make-record-constructor-descriptor, t332
make-record-type, 199, 210
make-record-type-descriptor, 215, t323, t331
make-rectangular, t182
make-reference-bytevector, 94
make-serious-condition, t366
make-source-condition, 360
make-source-file-descriptor, 350, 351, 353
make-source-object, 350, 352
make-source-table, 356
make-sstats, 430
make-stack, t52, t55
make-string, t218
make-syntax-violation, t370
make-thread-parameter, 482
make-time, 420
make-transcoder, t259
make-undefined-violation, t371
make-variable-transformer, t291, t298, t306
make-vector, t224
make-violation, t366
make-warning, t367
make-weak-eq-hashtable, 186
make-weak-eqv-hashtable, 186
make-weak-hashtable, 186
make-who-condition, t369
make-wrapper-procedure, 216
map, t45, t47, t117, t392
map1, t46
mapping, t45, t117, t118, t121, t122
mark-port-closed!, 255
matrix multiplication, t381
max, t178
maximum-memory-bytes, 429
maybe-compile-file, 378
maybe-compile-library, 378
maybe-compile-program, 378
member, t161
memory-order-acquire, 482
memory-order-release, 482
memp, t163
memq, t161
memv, t43, t161
merge, 183, t387
merge!, 183
message-condition?, t368
messages, t52, t408
meta, 121, 346
meta-circular interpreter, t404
meta-cond, 347
method, t317
min, t178
mkdir, 296
mod, t175
mod0, t176
module, 121, 339
modules, 121, 339
modulo, t175
most-negative-fixnum, 221
most-positive-fixnum, 221
mul, t382
multibyte->string, 277
multiple values, t9
multiprocessing, 139, t421
mutable, t331
mutable, 206
mutable boxes, 175, 177
mutable bytevectors, 168, 171
mutable strings, 155, 157
mutable vectors, 158, 161
mutable-box?, 176
mutable-bytevector?, 171
mutable-string?, 157
mutable-vector?, 160
mutex-acquire, 475
mutex-name, 476
mutex-release, 475
mutex?, 475
mutually recursive procedures, t66, t97
mvlet, 387
named let, t67, t71, t114
naming conventions, t8
nan?, t174
native-endianness, t228
native-eol-style, t260
native-transcoder, t259
negative?, t173
nested engines, t429
nested let expressions, t96
new-cafe, 413
newline, t285
no-infinities-violation?, t376
no-nans-violation?, t377
nodups?, 387
non-continuable-violation?, t369
nondeterministic computations, 139, 143, t421, t424
nongenerative, t331
nongenerative, t324
nongenerative record definitions, 201, 206
nonlocal exits, t123, t124
nonnegative?, 243
nonpositive?, 243
not, t36, t110
null-environment, 345, t137
null?, t37, t151
number syntax, t459
number->string, 244, t191
number?, t38, t151
numbers, t16, t167
numerator, t181
object identity, t144
object->reference-address, 95
object->string, t267
object-backreferences, 432
object-counts, 54, 431
object-oriented programming, t317, t408
objects, t3
oblist, 181
occur free, t28, t30
octet, t257
odd?, t47, t66, t81, t174
one-shot continuations, 134
only, 345
only import set, t346
opaque, t331
opaque record type, t330, t336
open-bytevector-input-port, t264
open-bytevector-output-port, t265
open-fd-input-port, 264
open-fd-input/output-port, 276
open-fd-output-port, 273
open-file-input-port, t262
open-file-input/output-port, t263
open-file-output-port, t262
open-input-file, 263, t280
open-input-output-file, 276
open-input-string, 260
open-output-file, 271, t281
open-output-string, 261
open-process-ports, 58
open-source-file, 351, 355
open-string-input-port, t265
open-string-output-port, t266
operating system, 142, t423, t429
operations on objects, t141
operator precedence, t16
optimization, 22
optimize-level, 23, 395
optional arguments, t93
or, t36, t63, t110
order of evaluation, t22, t107
ordinals, 211
ormap, 133
output port, t257
output-port-buffer-mode, t273
output-port?, t270
pair?, t38, t151
pairs, t19, t155
parameterize, 437
parameters, 5
parent, t331
parent type, t325
parent-rtd, t331
pares, 495
pariah, 403
partition, t164
path-absolute?, 298
path-build, 298
path-extension, 298
path-first, 298
path-last, 298
path-parent, 298
path-rest, 298
path-root, 298
pattern matching, 489
pattern variable, t294
pattern variables, t61, t299
patterns, t294
pbchunk-convert-file, 384
peek-char, t284
petite.boot, 24
petite?, 440
Petite Chez Scheme, 1, tix
phamtom bytevectors, 458
phantom-bytevector-length, 459
phantom-bytevector?, 459
pointer, 175
pointers, t4
por (parallel-or), 143, t424
port, t257
port-bol?, 255
port-closed?, 255
port-eof?, t278
port-file-compressed!, 259
port-file-descriptor, 262
port-handler, 251
port-has-port-length?, 256
port-has-port-nonblocking??, 257
port-has-port-position?, t271
port-has-set-port-length!?, 257
port-has-set-port-nonblocking!?, 257
port-has-set-port-position!?, t272
port-input-buffer, 252
port-input-count, 253
port-input-empty?, 253
port-input-index, 252
port-input-size, 252
port-length, 256
port-name, 256
port-nonblocking?, 257
port-output-buffer, 253
port-output-count, 254
port-output-full?, 254
port-output-index, 253
port-output-size, 253
port-position, t271
port-transcoder, t271
port?, t270
positive?, t173
predicate, 206
predicates, t8, t37, t143
prefix, 206
prefix import set, t346
prefix notation, t15, t16
pretty-file, 278
pretty-format, 278
pretty-initial-indent, 38, 280
pretty-line-length, 280
pretty-maximum-lines, 281
pretty-one-line-limit, 280
pretty-print, 277, 280, 288
pretty-standard-indent, 281
primitive procedures, t4
print-brackets, 288
print-char-name, 285
print-extended-identifiers, 4, 289
print-gensym, 178, 288
print-graph, 209, 286
print-length, 209, 286
print-level, 5, 286
print-positive-exponent-sign, 291
print-precision, 290
print-radix, 287
print-record, 210
print-select-flonum-exponential-format, 291
print-subnormal-precision, 290
print-unicode, 291
print-vector-length, 4, 290
printf, 283, t401
procedure application, t16, t17, t21, t27, t107
procedure definition, t5, t31, t100
procedure-arity-mask, 215
procedure-known-single-valued?, 218
procedure?, t155
procedures, t26, t91, t92
process, 57, 58
process ports, 304
product, t74, t80
profile, 408
profile-clear, 408, 409
profile-clear-database, 413
profile-dump, 404, 409, 410
profile-dump-data, 404, 410, 412
profile-dump-html, 404, 410
profile-dump-list, 404, 410, 411
profile-line-number-color, 411
profile-load-data, 404, 412
profile-palette, 410
profile-query-weight, 413
profile-release-counters, 408, 409
profiling, 23, 403
proper list, t19, t56, t155
property lists, 180
property-list, 181
protocol, t331
protocol for records, t326, t332
pseudo-random-generator->vector, 240
pseudo-random-generator-next!, 240
pseudo-random-generator-seed!, 240
pseudo-random-generator?, 240
ptr, 64, 68
ptrdiff_t, 63, 67
put-bytevector, t279
put-bytevector-some, 274
put-char, t279
put-datum, t279, t397
put-hash-table!, 488
put-registry!, 441
put-source-table, 356, 357
put-string, t279
put-string-some, 274
put-u8, t278
putenv, 441
putprop, 180
putq!, t54
quadratic-formula, t48
quasiquote` ), t142
quasisyntax#` ), t305
question mark ( ? ), t8, t37
queue, t53
quote' ), t17, t22, t59, t141
quote-syntax, 331
quotient, t175
r5rs, 345
r5rs module, 345
r5rs-syntax, 345
r5rs-syntax module, 345
raise, t357
raise-continuable, t357
random, 239
random number generator, 239
random-seed, 239
rational numbers, t167
rational-valued?, t153
rational?, t151, t167
rationalize, t181
ratnum, 219, 220
ratnum?, 221
rcd, t332
read, 286, t284
read-char, t284
read-token, 268
real numbers, t167
real->flonum, t211
real-part, t182
real-time, 427
real-valued?, t153
real?, t151, t167
rec, 123, 489, t311
reciprocal, t15, t37, t39, t80
record equality, 195
record field ordinals, 211
record generativity, 200, t324
record hashing, 195
record inheritance, 200, 203, t325
record uid, t325
record-accessor, t334
record-case, 132
record-constructor, 212, t333
record-constructor descriptor, t332
record-constructor-descriptor, t333
record-constructor-descriptor?, 147
record-equal-procedure, 195, 198
record-field-accessible?, 212
record-field-accessor, 212
record-field-mutable?, 213, t338
record-field-mutator, 212
record-hash-procedure, 195, 198
record-instance?, 214
record-mutator, t334
record-predicate, t333
record-reader, 207
record-rtd, t338
record-type descriptor, t331
record-type-descriptor, 215, t333
record-type-descriptor?, t332
record-type-equal-procedure, 195, 197
record-type-field-decls, 214
record-type-field-names, 213, t337
record-type-generative?, t337
record-type-has-named-fields?, 215
record-type-hash-procedure, 195, 198
record-type-name, 213, t336
record-type-opaque?, t337
record-type-parent, t336
record-type-sealed?, t337
record-type-symbol, 213
record-type-uid, t336
record-writer, 208
record?, 214, t338
records, 132, 199, t323
recursion, t5, t41, t65, t114
recursion step, t41
recursive object, 123
recursive procedure, t41
reference, 175
reference*-address->object, 96
reference-address->object, 95
reference-bytevector?, 94
register-signal-handler, 366
release-minimum-generation, 447
remainder, t175
remove, t163
remove!, 150
remove-foreign-entry, 100
remove-hash-table!, 488
remove-registry!, 441
remp, t163
remprop, 181
remq, t163
remq!, 150
remv, t44, t163
remv!, 150
rename, 345
rename import set, t346
rename-file, 297
require-nongenerative-clause, 194, 195
reset, 416
reset-cost-center!, 435
reset-handler, 11, 416
reset-maximum-memory-bytes!, 429
retry, t75, t80
reverse, t161
reverse!, 151
Revised Reports, tix, t3
revisit, 375
revisit-compiled-from-port, 374
round, t178
round-robin, 142, t423
rtd, t331
run-cp0, 399
run-time generativity, 201
s (short), t169
s8-list->bytevector, 169
Sactivate_thread, 113
safety, 23
Sbignump, 105
Sboolean, 108
Sboolean_value, 105
Sbooleanp, 105
Sbox, 109
Sboxp, 105
Sbuild_heap, 102
Sbwp_object, 107
Sbwp_objectp, 104
Sbytevector_data, 107
Sbytevector_length, 106
Sbytevector_u8_ref, 106
Sbytevector_u8_set, 107
Sbytevectorp, 105
sc-expand, 385
Scall, 112
Scall0, 111
Scall1, 111
Scall2, 111
Scall3, 111
Scar, 106
Scdr, 106
Schar, 108
Schar_value, 105
Scharp, 104
scheme, 345
scheme module, 345
Scheme shell scripts, 20
Scheme standard, tix
scheme-environment, 368
scheme-object, 61, 64, 66, 68
scheme-pre-release, 440
scheme-program, 417
scheme-report-environment, 345, t137
scheme-script, 311, 417
scheme-start, 27, 28, 417
scheme-version, 439
scheme-version-number, 440
scheme.boot, 24
SCHEMEHEAPDIRS, 31
Scompact_heap, 103, 110, 443
Scons, 109
scope, t25
scripting, 20
Sdeactivate_thread, 113
Sdestroy_thread, 113
sealed, t331
sealed record type, t330
segment-length, t132
segment-slope, t132
self-evaluating-vectors, 161
semicolon ( ; ), t7, t455
Senable_expeditor, 102
Seof_object, 107
Seof_objectp, 104
sequence, t313
sequencing, t108
serious-condition?, t366
set!, 126, t47, t59, t102
set-binary-port-input-buffer!, 252
set-binary-port-input-index!, 252
set-binary-port-input-size!, 252
set-binary-port-output-buffer!, 254
set-binary-port-output-index!, 254
set-binary-port-output-size!, 254
set-box!, 176
set-car!, t157
set-cdr!, t56, t157
set-of, t389
set-phantom-bytevector-length!, 459
set-port-bol!, 255
set-port-eof!, 255
set-port-input-buffer!, 252
set-port-input-index!, 252
set-port-input-size!, 252
set-port-length!, 257
set-port-name!, 256
set-port-nonblocking!, 257
set-port-output-buffer!, 254
set-port-output-index!, 254
set-port-output-size!, 254
set-port-position!, t272
set-sstats-bytes!, 430
set-sstats-cpu!, 430
set-sstats-gc-bytes!, 430
set-sstats-gc-count!, 430
set-sstats-gc-cpu!, 430
set-sstats-gc-real!, 430
set-sstats-real!, 430
set-textual-port-input-buffer!, 252
set-textual-port-input-index!, 252
set-textual-port-input-size!, 252
set-textual-port-output-buffer!, 254
set-textual-port-output-index!, 254
set-textual-port-output-size!, 254
set-time-nanosecond!, 421
set-time-second!, 421
set-time-type!, 421
set-timer, 140, 365
set-top-level-value!, 126
set-virtual-register!, 439
set-wrapper-procedure-data!, 217
set-wrapper-procedure-procedure!, 217
sets, t389
Sexactnump, 105
Sfalse, 107
Sfixnum, 108
Sfixnum_value, 105
Sfixnump, 104
Sflonum, 108
Sflonum_value, 105
Sflonump, 105
Sforeign_callable_code_object, 111
Sforeign_callable_entry_point, 111
Sforeign_symbol, 111
Sfxvector_length, 106
Sfxvector_ref, 106
Sfxvector_set, 107
Sfxvectorp, 105
Sgetenv, 109
shadowing, t4, t25, t31
shhh, t50
short, 62, 66
shorter, t41, t47
shorter?, t47
side effects, t8, t108
simple condition, t362
simple-conditions, t363
sin, t185
Sinexactnump, 105
single-float, 62, 66
sinh, 244
Sinitframe, 112
Sinputportp, 105
sint-list->bytevector, t239
Sinteger, 108
Sinteger_value, 105
Sinteger32, 109
Sinteger32_value, 105
Sinteger64, 109
Sinteger64_value, 105
size_t, 63, 67
Skernel_version, 102
sleep, 426
Slock_object, 110, 457
Slocked_objectp, 110
Smake_bytevector, 109
Smake_flvector, 109
Smake_fxvector, 109
Smake_string, 109
Smake_uninitialized_string, 109
Smake_vector, 109
Snil, 107
Snullp, 104
sockets, 114, 304
sort, 183, t387
sort!, 183
source objects, 350
source profiling, 403
source-condition-form, 360
source-condition?, 360
source-directories, 18, 372, 373, 375, 394
source-file descriptors, 350
source-file-descriptor, 354
source-file-descriptor-checksum, 353
source-file-descriptor-path, 354
source-file-descriptor?, 353
source-object-bfp, 353
source-object-column, 353
source-object-efp, 353
source-object-line, 353
source-object-sfd, 352
source-object?, 352
source-table-cell, 357
source-table-contains?, 357
source-table-delete!, 357
source-table-dump, 410
source-table-ref, 356
source-table-set!, 356
source-table-size, 357
source-table?, 356
Soutputportp, 105
Spairp, 105
special bindings (in Lisp), 124
SPINLOCK, 114
split, t133
Sprocedurep, 105
Sput_arg, 112
sqrt, t183
square, t14
Sratnump, 105
Srecord_type, 107
Srecord_type_parent, 107
Srecord_type_size, 107
Srecord_type_uniformp, 107
Srecord_uniform_ref, 107
Srecordp, 105
Sregister_boot_executable_relative_file, 102
Sregister_boot_file, 102
Sregister_boot_file_bytes, 102
Sregister_boot_file_fd, 102
Sregister_boot_file_fd_region, 102
Sregister_boot_relative_file, 102
Sregister_symbol, 111
Sretain_static_relocation, 103
Sscheme_deinit, 103
Sscheme_init, 102
Sscheme_program, 103
Sscheme_script, 103
Sscheme_start, 103
Sset_box, 107
Sset_car, 107
Sset_cdr, 107
Sset_top_level_value, 109
Sset_verbose, 102
ssize_t, 63, 67
sstats-bytes, 430
sstats-cpu, 430
sstats-difference, 431
sstats-gc-bytes, 430
sstats-gc-count, 430
sstats-gc-cpu, 430
sstats-gc-real, 430
sstats-print, 431
sstats-real, 430
sstats?, 430
Sstring, 108
Sstring_length, 106
Sstring_of_length, 108
Sstring_ref, 106
Sstring_set, 107
Sstring_to_symbol, 109
Sstring_utf8, 108
Sstringp, 105
Ssymbol_to_string, 106
Ssymbolp, 105
stack objects, t52
standard-error-port, 274, t264
standard-input-port, 265, t264
standard-output-port, 273, t264
static generation, 443
statistics, 429
stdbool, 63, 67
stencil vectors, 172
stencil-vector, 172
stencil-vector-length, 173
stencil-vector-mask, 173
stencil-vector-mask-width, 172
stencil-vector-ref, 173
stencil-vector-set!, 173
stencil-vector-truncate!, 174
stencil-vector-update, 174
stencil-vector?, 172
Stop_level_value, 109
storage management, 443
streams, t128
stretch strings, 496
string, 61, 65, 69, t218
string input port, 260
string output port, 261
string streams, 245
string syntax, t458
string->bytevector, t287
string->immutable-string, 155, 157
string->list, t222
string->multibyte, 277
string->number, 244, t191
string->symbol, t242
string->uninterned-symbol, 179
string->utf16, t287
string->utf32, t287
string->utf8, t287
string-append, t219
string-append-immutable, 155, 157
string-ci-hash, t245
string-ci<=?, 155, t217
string-ci<?, 155, t217
string-ci=?, 155, t217
string-ci>=?, 155, t217
string-ci>?, 155, t217
string-copy, t219
string-copy!, 156
string-downcase, t221
string-fill!, t220
string-foldcase, t221
string-for-each, t122
string-grapheme-count, 158
string-grapheme-span, 157
string-hash, t245
string-length, t218
string-normalize-nfc, t222
string-normalize-nfd, t222
string-normalize-nfkc, t222
string-normalize-nfkd, t222
string-ref, t218
string-set!, t219
string-titlecase, t221
string-truncate!, 156
string-upcase, t221
string<=?, 155, t216
string<?, 155, t216
string=?, 155, t216
string>=?, 155, t216
string>?, 155, t216
string?, t38, t154
strings, t14, t216
strip-fasl-file, 27, 383
structured forms, t6
structures, 494, t318
Strue, 107
Stry_integer_value, 106
Stry_integer32_value, 106
Stry_integer64_value, 106
Stry_unsigned_value, 106
Stry_unsigned32_value, 106
Stry_unsigned64_value, 106
sub1, 241
subset-mode, 442
subst, 150
subst!, 150
substq, 150
substq!, 150
substring, t95, t220
substring-fill!, 156
substv, 150
substv!, 150
subtract-duration, 422
subtract-duration!, 422
sum, t65
Sunbox, 106
Sunlock_object, 110, 457
Sunsigned, 108
Sunsigned_value, 105
Sunsigned32, 109
Sunsigned32_value, 105
Sunsigned64, 109
Sunsigned64_value, 105
suppress-greeting, 418
Sutf8_to_wide, 109
Svector_length, 106
Svector_ref, 106
Svector_set, 107
Svectorp, 105
Svoid, 107
Swide_to_utf8, 109
symbol syntax, t458
symbol table, t241
symbol->string, t242
symbol-hash, t245
symbol-hashtable-cell, 193
symbol-hashtable-contains?, 192
symbol-hashtable-delete!, 194
symbol-hashtable-ref, 192
symbol-hashtable-ref-cell, 194
symbol-hashtable-set!, 191
symbol-hashtable-update!, 192
symbol-hashtable?, 191
symbol=?, t242
symbol?, t38, t154
symbols, t18, t241
synonym streams, 245
syntactic extensions, t5, t22, t59, t60, t291
syntactic forms, t18, t59, t291
syntax, t291
syntax#' ), t300
syntax object, t298
syntax violation, 4, t9
syntax->annotation, 351, 354
syntax->datum, t308
syntax->list, 329
syntax->vector, 330
syntax-case, 497, t291, t299
syntax-error, 333
syntax-object->datum, 330
syntax-rules, 329, t291, t294, t300, t389
syntax-violation, t359
syntax-violation-form, t370
syntax-violation-subform, t370
syntax-violation?, t370
system, 57
tagged lists, 132
tail call, t5, t68
tail recursion, t5, t68
tan, t185
tanh, 244
tconc, t53
tell, t50
templates, t295
textual port, t257
textual-port-input-buffer, 252
textual-port-input-count, 253
textual-port-input-index, 252
textual-port-input-size, 252
textual-port-output-buffer, 253
textual-port-output-count, 254
textual-port-output-index, 253
textual-port-output-size, 253
textual-port?, t270
The Scheme Programming Language, 4th Edition, ???, 1, 503
thread-condition?, 476
thread-join, 474
thread-preserve-ownership!, 474
thread-safe primitives, 473
thread?, 474
threaded?, 441
threads, 473, t421
thunk, t51, t124
ticks, see engines
time, 427
time-difference, 422
time-difference!, 422
time-nanosecond, 421
time-second, 421
time-type, 421
time-utc->date, 426
time<=?, 422
time<?, 422
time=?, 422
time>=?, 422
time>?, 422
time?, 421
timed preemption, 139, t421
timer interrupts, 365, t425
timer-interrupt-handler, 365
tokens, t455
top-level definitions, t30, t101
top-level programs, 14, 21, t343
top-level values, 125
top-level-bound?, 126
top-level-mutable?, 127
top-level-program, 312, 313
top-level-programs, 17, 23, 309, 313
top-level-syntax, 128
top-level-syntax?, 129
top-level-value, 126
trace, 36, t42
trace-case-lambda, 34
trace-define, 38
trace-define-syntax, 39
trace-do, 35
trace-lambda, 33
trace-let, 34
trace-output-port, 38
trace-print, 38
tracing, t42
transcoded-port, t271
transcoded-port-buffer-size, 250
transcoder, t257
transcoder-codec, t259
transcoder-eol-style, t259
transcoder-error-handling-mode, t259
transcoder?, 250
transcript, 418
transcript ports, 301
transcript-cafe, 419
transcript-off, 419
transcript-on, 419
transformer, t61
tree-copy, t44
true, t7, t36
truncate, t177
truncate-file, 275
truncate-port, 275
two-way ports, 300
two-way streams, 245
type predicates, t38
type-descriptor, 207
u16*, 61, 64, 68
u32*, 61, 64
u8*, 61, 64, 68
u8-list->bytevector, t232
uint-list->bytevector, t239
unbox, 175
undefined-variable-warnings, 402
undefined-violation?, t371
underscore ( _ ), t61, t296, t315
underscore (_), t294
unget-char, 266
unget-u8, 267
unification, t417
unify, t418
uninterned symbols, 178
uninterned-symbol?, 180
uninterned-symbol?, 178
Unix, 100
unless, t64, t112
UNLOCK, 114
unlock-object, 110, 457
unquote, ), t142
unquote-splicing,@ ), t142
unread-char, 266
unregister-guardian, 456, 480
unsigned, 62, 67
unsigned long, 63, 67
unsigned short, 62, 67
unsigned-16, 61, 66
unsigned-32, 62, 66
unsigned-64, 62, 66
unsigned-8, 61, 66
unsigned-int, 62, 67
unsigned-long-long, 63, 67
unspecified, 4, t9
unsyntax#, ), t305
unsyntax-splicing#,@ ), t305
untrace, 37
unwind-protect (in Lisp), t124
uptr, 63, 67
utf-16, 61, 64, 68
utf-16, t257
utf-16-codec, 249, t259
utf-16be, 61, 64, 69
utf-16be-codec, 249
utf-16le, 61, 64, 68
utf-16le-codec, 249
utf-32, 61, 65, 69
utf-32be, 61, 65, 69
utf-32le, 61, 65, 69
utf-8, 61, 64, 68
utf-8, t257
utf-8-codec, t259
utf16->string, t288
utf32->string, t288
utf8->string, t287
values, t130, t131
variable binding, t23, t91
variable definition, 121
variable reference, t91
variables, t4, t18, t23, t30, t47
vector, t224
vector printing, 290
vector syntax, t461
vector->immutable-vector, 158, 161
vector->list, t225
vector->pseudo-random-generator, 240
vector->pseudo-random-generator!, 240
vector-append, 159
vector-cas!, 160
vector-copy, 158
vector-copy!, 159
vector-fill!, t225
vector-for-each, t122
vector-length, t224
vector-map, t121
vector-ref, t224
vector-set!, t225
vector-set-fixnum!, 160
vector-set/copy, 159
vector-sort, t226
vector-sort!, t226
vector?, t154
vectors, t55, t223, t383
verify-loadability, 373
vfasl-convert-file, 384
violation?, t366
virtual-register, 439
virtual-register-count, 439
visit, 374
visit-compiled-from-port, 374
void, 4, 66, 182
void object, 4
void*, 63, 67
waiter, 413
waiter-prompt-and-read, 415
waiter-prompt-string, 414
waiter-write, 415
warning, 359
warning?, t367
warningf, 360
wchar, 63, 68
wchar_t, 63, 68
weak pairs, 449
weak pointers, 449
weak-cons, 449
weak-pair?, 450
when, 490, t64, t112
whitespace, t455
whitespace characters, t7
who-condition?, t369
winders, see dynamic-wind
with, 491, 493
with-continuation-mark, 135
with-cost-center, 434
with-exception-handler, t360
with-implicit, 331
with-input-from-file, 264, t283
with-input-from-string, 260
with-interrupts-disabled, 366, 446
with-mutex, 476
with-output-to-file, 273, t283
with-output-to-string, 261
with-profile-tracker, 356, 409, 410
with-source-path, 394
with-syntax, t304
wrapper-procedure-data, 217
wrapper-procedure-procedure, 217
wrapper-procedure?, 216
write, t284, t397
write-char, t285
wstring, 61, 65, 69
x++, t316
zero?, t173

Chez Scheme Version 10 User's Guide
Copyright © 2026 Cisco Systems, Inc.
Licensed under the Apache License Version 2.0 (full copyright notice.).
Revised May 2026 for Chez Scheme Version 10.4.0
about this book