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

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