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