Summary of Forms

The table that follows summarizes the Scheme syntactic forms and procedures described in Chapters 4 through 11. It shows the category of the form and the page number where it is defined. The category states whether the form describes a syntactic form or a procedure.

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

FormCategoryPage

'objsyntax141
`objsyntax142
,objsyntax142
,@objsyntax142
=>syntax112
_syntax297
...syntax297
#'templatesyntax300
#`templatesyntax305
#,templatesyntax305
#,@templatesyntax305
&assertionsyntax366
&conditionsyntax362
&errorsyntax367
&i/osyntax371
&i/o-decodingsyntax375
&i/o-encodingsyntax376
&i/o-file-already-existssyntax374
&i/o-file-does-not-existsyntax374
&i/o-file-is-read-onlysyntax374
&i/o-file-protectionsyntax373
&i/o-filenamesyntax373
&i/o-invalid-positionsyntax372
&i/o-portsyntax375
&i/o-readsyntax372
&i/o-writesyntax372
&implementation-restrictionsyntax369
&irritantssyntax368
&lexicalsyntax370
&messagesyntax368
&no-infinitiessyntax376
&no-nanssyntax377
&non-continuablesyntax369
&serioussyntax366
&syntaxsyntax370
&undefinedsyntax371
&violationsyntax366
&warningsyntax367
&whosyntax369
(* num ...)procedure172
(+ num ...)procedure171
(- num)procedure172
(- num1 num2 num3 ...)procedure172
(/ num)procedure172
(/ num1 num2 num3 ...)procedure172
(< real1 real2 real3 ...)procedure170
(<= real1 real2 real3 ...)procedure170
(= num1 num2 num3 ...)procedure170
(> real1 real2 real3 ...)procedure170
(>= real1 real2 real3 ...)procedure170
(abs real)procedure178
(acos num)procedure185
(and expr ...)syntax110
(angle num)procedure183
(append)procedure160
(append list ... obj)procedure160
(apply procedure obj ... list)procedure107
(asin num)procedure185
(assert expression)syntax359
(assertion-violation who msg irritant ...)procedure358
(assertion-violation? obj)procedure366
(assoc obj alist)procedure165
(assp procedure alist)procedure166
(assq obj alist)procedure165
(assv obj alist)procedure165
(atan num)procedure185
(atan real1 real2)procedure185
(begin expr1 expr2 ...)syntax108
(binary-port? obj)procedure270
(bitwise-and exint ...)procedure186
(bitwise-arithmetic-shift exint1 exint2)procedure190
(bitwise-arithmetic-shift-left exint1 exint2)procedure189
(bitwise-arithmetic-shift-right exint1 exint2)procedure189
(bitwise-bit-count exint)procedure187
(bitwise-bit-field exint1 exint2 exint3)procedure189
(bitwise-bit-set? exint1 exint2)procedure188
(bitwise-copy-bit exint1 exint2 exint3)procedure188
(bitwise-copy-bit-field exint1 exint2 exint3 exint4)procedure189
(bitwise-first-bit-set exint)procedure187
(bitwise-if exint1 exint2 exint3)procedure186
(bitwise-ior exint ...)procedure186
(bitwise-length exint)procedure187
(bitwise-not exint)procedure186
(bitwise-reverse-bit-field exint1 exint2 exint3)procedure191
(bitwise-rotate-bit-field exint1 exint2 exint3 exint4)procedure190
(bitwise-xor exint ...)procedure186
(boolean=? boolean1 boolean2)procedure243
(boolean? obj)procedure150
(bound-identifier=? identifier1 identifier2)procedure302
(buffer-mode symbol)syntax261
(buffer-mode? obj)syntax262
(bytevector->sint-list bytevector eness size)procedure238
(bytevector->string bytevector transcoder)procedure286
(bytevector->u8-list bytevector)procedure232
(bytevector->uint-list bytevector eness size)procedure238
(bytevector-copy bytevector)procedure229
(bytevector-copy! src src-start dst dst-start n)procedure230
(bytevector-fill! bytevector fill)procedure229
(bytevector-ieee-double-native-ref bytevector n)procedure239
(bytevector-ieee-double-native-set! bytevector n x)procedure239
(bytevector-ieee-double-ref bytevector n eness)procedure240
(bytevector-ieee-double-set! bytevector n x eness)procedure240
(bytevector-ieee-single-native-ref bytevector n)procedure239
(bytevector-ieee-single-native-set! bytevector n x)procedure239
(bytevector-ieee-single-ref bytevector n eness)procedure240
(bytevector-ieee-single-set! bytevector n x eness)procedure240
(bytevector-length bytevector)procedure229
(bytevector-s16-native-ref bytevector n)procedure232
(bytevector-s16-native-set! bytevector n s16)procedure233
(bytevector-s16-ref bytevector n eness)procedure235
(bytevector-s16-set! bytevector n s16 eness)procedure236
(bytevector-s32-native-ref bytevector n)procedure232
(bytevector-s32-native-set! bytevector n s32)procedure233
(bytevector-s32-ref bytevector n eness)procedure235
(bytevector-s32-set! bytevector n s32 eness)procedure236
(bytevector-s64-native-ref bytevector n)procedure232
(bytevector-s64-native-set! bytevector n s64)procedure233
(bytevector-s64-ref bytevector n eness)procedure235
(bytevector-s64-set! bytevector n s64 eness)procedure236
(bytevector-s8-ref bytevector n)procedure231
(bytevector-s8-set! bytevector n s8)procedure231
(bytevector-sint-ref bytevector n eness size)procedure237
(bytevector-sint-set! bytevector n sint eness size)procedure238
(bytevector-u16-native-ref bytevector n)procedure232
(bytevector-u16-native-set! bytevector n u16)procedure233
(bytevector-u16-ref bytevector n eness)procedure235
(bytevector-u16-set! bytevector n u16 eness)procedure236
(bytevector-u32-native-ref bytevector n)procedure232
(bytevector-u32-native-set! bytevector n u32)procedure233
(bytevector-u32-ref bytevector n eness)procedure235
(bytevector-u32-set! bytevector n u32 eness)procedure236
(bytevector-u64-native-ref bytevector n)procedure232
(bytevector-u64-native-set! bytevector n u64)procedure233
(bytevector-u64-ref bytevector n eness)procedure235
(bytevector-u64-set! bytevector n u64 eness)procedure236
(bytevector-u8-ref bytevector n)procedure230
(bytevector-u8-set! bytevector n u8)procedure231
(bytevector-uint-ref bytevector n eness size)procedure237
(bytevector-uint-set! bytevector n uint eness size)procedure238
(bytevector=? bytevector1 bytevector2)procedure229
(bytevector? obj)procedure155
(caaaar pair)procedure157
(caaadr pair)procedure157
(caaar pair)procedure157
(caadar pair)procedure157
(caaddr pair)procedure157
(caadr pair)procedure157
(caar pair)procedure157
(cadaar pair)procedure157
(cadadr pair)procedure157
(cadar pair)procedure157
(caddar pair)procedure157
(cadddr pair)procedure157
(caddr pair)procedure157
(cadr pair)procedure157
(call-with-bytevector-output-port procedure)procedure266
(call-with-bytevector-output-port procedure ?transcoder)procedure266
(call-with-current-continuation procedure)procedure123
(call-with-input-file path procedure)procedure281
(call-with-output-file path procedure)procedure282
(call-with-port port procedure)procedure272
(call-with-string-output-port procedure)procedure267
(call-with-values producer consumer)procedure131
(call/cc procedure)procedure123
(car pair)procedure156
(case expr0 clause1 clause2 ...)syntax113
(case-lambda clause ...)syntax94
(cdaaar pair)procedure157
(cdaadr pair)procedure157
(cdaar pair)procedure157
(cdadar pair)procedure157
(cdaddr pair)procedure157
(cdadr pair)procedure157
(cdar pair)procedure157
(cddaar pair)procedure157
(cddadr pair)procedure157
(cddar pair)procedure157
(cdddar pair)procedure157
(cddddr pair)procedure157
(cdddr pair)procedure157
(cddr pair)procedure157
(cdr pair)procedure156
(ceiling real)procedure177
(char->integer char)procedure215
(char-alphabetic? char)procedure213
(char-ci<=? char1 char2 char3 ...)procedure212
(char-ci<? char1 char2 char3 ...)procedure212
(char-ci=? char1 char2 char3 ...)procedure212
(char-ci>=? char1 char2 char3 ...)procedure212
(char-ci>? char1 char2 char3 ...)procedure212
(char-downcase char)procedure214
(char-foldcase char)procedure215
(char-general-category char)procedure214
(char-lower-case? char)procedure213
(char-numeric? char)procedure213
(char-title-case? char)procedure213
(char-titlecase char)procedure214
(char-upcase char)procedure214
(char-upper-case? char)procedure213
(char-whitespace? char)procedure213
(char<=? char1 char2 char3 ...)procedure212
(char<? char1 char2 char3 ...)procedure212
(char=? char1 char2 char3 ...)procedure212
(char>=? char1 char2 char3 ...)procedure212
(char>? char1 char2 char3 ...)procedure212
(char? obj)procedure154
(close-input-port input-port)procedure285
(close-output-port output-port)procedure285
(close-port port)procedure270
(command-line)procedure350
(complex? obj)procedure151
(cond clause1 clause2 ...)syntax111
(condition condition ...)procedure362
(condition-accessor rtd procedure)procedure365
(condition-irritants condition)procedure368
(condition-message condition)procedure368
(condition-predicate rtd)procedure365
(condition-who condition)procedure369
(condition? obj)procedure362
(cons obj1 obj2)procedure156
(cons* obj ... final-obj)procedure158
constantsyntax141
(cos num)procedure185
(current-error-port)procedure263
(current-input-port)procedure263
(current-output-port)procedure263
(datum->syntax template-identifier obj)procedure308
(define var expr)syntax100
(define var)syntax100
(define (var0 var1 ...) body1 body2 ...)syntax100
(define (var0 . varrbody1 body2 ...)syntax100
(define (var0 var1 var2 ... . varrbody1 body2 ...)syntax100
(define-condition-type name parent constructor pred field ...)syntax364
(define-enumeration name (symbol ...) constructor)syntax250
(define-record-type record-name clause ...)syntax328
(define-record-type (record-name constructor predclause ...)syntax328
(define-syntax keyword expr)syntax292
(delay expr)syntax128
(delete-file path)procedure286
(denominator rat)procedure181
(display obj)procedure285
(display obj textual-output-port)procedure285
(div x1 x2)procedure175
(div-and-mod x1 x2)procedure175
(div0 x1 x2)procedure176
(div0-and-mod0 x1 x2)procedure176
(do ((var init update) ...) (test result ...) expr ...)syntax115
(dynamic-wind in body out)procedure124
elsesyntax112
(endianness symbol)syntax228
(enum-set->list enum-set)procedure252
(enum-set-complement enum-set)procedure254
(enum-set-constructor enum-set)procedure251
(enum-set-difference enum-set1 enum-set2)procedure253
(enum-set-indexer enum-set)procedure254
(enum-set-intersection enum-set1 enum-set2)procedure253
(enum-set-member? symbol enum-set)procedure253
(enum-set-projection enum-set1 enum-set2)procedure254
(enum-set-subset? enum-set1 enum-set2)procedure252
(enum-set-union enum-set1 enum-set2)procedure253
(enum-set-universe enum-set)procedure252
(enum-set=? enum-set1 enum-set2)procedure252
(environment import-spec ...)procedure137
(eof-object)procedure273
(eof-object? obj)procedure273
(eol-style symbol)syntax259
(eq? obj1 obj2)procedure143
(equal-hash obj)procedure245
(equal? obj1 obj2)procedure148
(eqv? obj1 obj2)procedure146
(error who msg irritant ...)procedure358
(error-handling-mode symbol)syntax260
(error? obj)procedure367
(eval obj environment)procedure136
(even? int)procedure174
(exact num)procedure180
(exact->inexact num)procedure181
(exact-integer-sqrt n)procedure184
(exact? num)procedure170
(exists procedure list1 list2 ...)procedure119
(exit)procedure350
(exit obj)procedure350
(exp num)procedure184
(expt num1 num2)procedure179
fieldssyntax331
(file-exists? path)procedure286
(file-options symbol ...)syntax261
(filter procedure list)procedure164
(find procedure list)procedure165
(finite? real)procedure174
(fixnum->flonum fx)procedure211
(fixnum-width)procedure193
(fixnum? obj)procedure193
(fl* fl ...)procedure207
(fl+ fl ...)procedure206
(fl- fl)procedure206
(fl- fl1 fl2 fl3 ...)procedure206
(fl/ fl)procedure207
(fl/ fl1 fl2 fl3 ...)procedure207
(fl<=? fl1 fl2 fl3 ...)procedure203
(fl<? fl1 fl2 fl3 ...)procedure203
(fl=? fl1 fl2 fl3 ...)procedure203
(fl>=? fl1 fl2 fl3 ...)procedure203
(fl>? fl1 fl2 fl3 ...)procedure203
(flabs fl)procedure209
(flacos fl)procedure210
(flasin fl)procedure210
(flatan fl)procedure210
(flatan fl1 fl2)procedure210
(flceiling fl)procedure208
(flcos fl)procedure210
(fldenominator fl)procedure209
(fldiv fl1 fl2)procedure207
(fldiv-and-mod fl1 fl2)procedure207
(fldiv0 fl1 fl2)procedure208
(fldiv0-and-mod0 fl1 fl2)procedure208
(fleven? fl-int)procedure205
(flexp fl)procedure209
(flexpt fl1 fl2)procedure210
(flfinite? fl)procedure205
(flfloor fl)procedure208
(flinfinite? fl)procedure205
(flinteger? fl)procedure204
(fllog fl)procedure209
(fllog fl1 fl2)procedure209
(flmax fl1 fl2 ...)procedure205
(flmin fl1 fl2 ...)procedure205
(flmod fl1 fl2)procedure207
(flmod0 fl1 fl2)procedure208
(flnan? fl)procedure205
(flnegative? fl)procedure204
(flnumerator fl)procedure209
(flodd? fl-int)procedure205
(flonum? obj)procedure203
(floor real)procedure177
(flpositive? fl)procedure204
(flround fl)procedure208
(flsin fl)procedure210
(flsqrt fl)procedure210
(fltan fl)procedure210
(fltruncate fl)procedure208
(flush-output-port output-port)procedure280
(flzero? fl)procedure204
(fold-left procedure obj list1 list2 ...)procedure120
(fold-right procedure obj list1 list2 ...)procedure121
(for-all procedure list1 list2 ...)procedure119
(for-each procedure list1 list2 ...)procedure118
(force promise)procedure128
(free-identifier=? identifier1 identifier2)procedure302
(fx* fx1 fx2)procedure195
(fx*/carry fx1 fx2 fx3)procedure197
(fx+ fx1 fx2)procedure195
(fx+/carry fx1 fx2 fx3)procedure197
(fx- fx)procedure195
(fx- fx1 fx2)procedure195
(fx-/carry fx1 fx2 fx3)procedure197
(fx<=? fx1 fx2 fx3 ...)procedure193
(fx<? fx1 fx2 fx3 ...)procedure193
(fx=? fx1 fx2 fx3 ...)procedure193
(fx>=? fx1 fx2 fx3 ...)procedure193
(fx>? fx1 fx2 fx3 ...)procedure193
(fxand fx ...)procedure197
(fxarithmetic-shift fx1 fx2)procedure201
(fxarithmetic-shift-left fx1 fx2)procedure201
(fxarithmetic-shift-right fx1 fx2)procedure201
(fxbit-count fx)procedure198
(fxbit-field fx1 fx2 fx3)procedure200
(fxbit-set? fx1 fx2)procedure199
(fxcopy-bit fx1 fx2 fx3)procedure200
(fxcopy-bit-field fx1 fx2 fx3 fx4)procedure200
(fxdiv fx1 fx2)procedure196
(fxdiv-and-mod fx1 fx2)procedure196
(fxdiv0 fx1 fx2)procedure196
(fxdiv0-and-mod0 fx1 fx2)procedure196
(fxeven? fx)procedure194
(fxfirst-bit-set fx)procedure199
(fxif fx1 fx2 fx3)procedure198
(fxior fx ...)procedure197
(fxlength fx)procedure198
(fxmax fx1 fx2 ...)procedure195
(fxmin fx1 fx2 ...)procedure195
(fxmod fx1 fx2)procedure196
(fxmod0 fx1 fx2)procedure196
(fxnegative? fx)procedure194
(fxnot fx)procedure197
(fxodd? fx)procedure194
(fxpositive? fx)procedure194
(fxreverse-bit-field fx1 fx2 fx3)procedure202
(fxrotate-bit-field fx1 fx2 fx3 fx4)procedure201
(fxxor fx ...)procedure197
(fxzero? fx)procedure194
(gcd int ...)procedure179
(generate-temporaries list)procedure310
(get-bytevector-all binary-input-port)procedure275
(get-bytevector-n binary-input-port n)procedure274
(get-bytevector-n! binary-input-port bytevector start n)procedure274
(get-bytevector-some binary-input-port)procedure275
(get-char textual-input-port)procedure275
(get-datum textual-input-port)procedure278
(get-line textual-input-port)procedure277
(get-string-all textual-input-port)procedure277
(get-string-n textual-input-port n)procedure276
(get-string-n! textual-input-port string start n)procedure276
(get-u8 binary-input-port)procedure274
(greatest-fixnum)procedure193
(guard (var clause1 clause2 ...) b1 b2 ...)syntax361
(hashtable-clear! hashtable)procedure249
(hashtable-clear! hashtable size)procedure249
(hashtable-contains? hashtable key)procedure246
(hashtable-copy hashtable)procedure248
(hashtable-copy hashtable mutable?)procedure248
(hashtable-delete! hashtable key)procedure248
(hashtable-entries hashtable)procedure250
(hashtable-equivalence-function hashtable)procedure245
(hashtable-hash-function hashtable)procedure245
(hashtable-keys hashtable)procedure249
(hashtable-mutable? hashtable)procedure245
(hashtable-ref hashtable key default)procedure246
(hashtable-set! hashtable key obj)procedure246
(hashtable-size hashtable)procedure248
(hashtable-update! hashtable key procedure default)procedure247
(hashtable? obj)procedure155
(i/o-decoding-error? obj)procedure375
(i/o-encoding-error-char condition)procedure376
(i/o-encoding-error? obj)procedure376
(i/o-error-filename condition)procedure373
(i/o-error-port condition)procedure375
(i/o-error-position condition)procedure372
(i/o-error? obj)procedure371
(i/o-file-already-exists-error? obj)procedure374
(i/o-file-does-not-exist-error? obj)procedure374
(i/o-file-is-read-only-error? obj)procedure374
(i/o-file-protection-error? obj)procedure373
(i/o-filename-error? obj)procedure373
(i/o-invalid-position-error? obj)procedure372
(i/o-port-error? obj)procedure375
(i/o-read-error? obj)procedure372
(i/o-write-error? obj)procedure372
(identifier-syntax tmpl)syntax297
(identifier-syntax (id1 tmpl1) ((set! id2 e2tmpl2))syntax297
(identifier? obj)procedure301
(if test consequent alternative)syntax109
(if test consequent)syntax109
(imag-part num)procedure182
immutablesyntax331
(implementation-restriction-violation? obj)procedure369
(inexact num)procedure180
(inexact->exact num)procedure181
(inexact? num)procedure170
(infinite? real)procedure174
(input-port? obj)procedure270
(integer->char n)procedure215
(integer-valued? obj)procedure153
(integer? obj)procedure151
(irritants-condition? obj)procedure368
(lambda formals body1 body2 ...)syntax92
(latin-1-codec)procedure259
(lcm int ...)procedure179
(least-fixnum)procedure193
(length list)procedure159
(let ((var expr) ...) body1 body2 ...)syntax95
(let name ((var expr) ...) body1 body2 ...)syntax114
(let* ((var expr) ...) body1 body2 ...)syntax96
(let*-values ((formals expr) ...) body1 body2 ...)syntax99
(let-syntax ((keyword expr) ...) form1 form2 ...)syntax293
(let-values ((formals expr) ...) body1 body2 ...)syntax99
(letrec ((var expr) ...) body1 body2 ...)syntax97
(letrec* ((var expr) ...) body1 body2 ...)syntax98
(letrec-syntax ((keyword expr) ...) form1 form2 ...)syntax293
(lexical-violation? obj)procedure370
(list obj ...)procedure158
(list->string list)procedure223
(list->vector list)procedure226
(list-ref list n)procedure159
(list-sort predicate list)procedure167
(list-tail list n)procedure160
(list? obj)procedure158
(log num)procedure184
(log num1 num2)procedure184
(lookahead-char textual-input-port)procedure275
(lookahead-u8 binary-input-port)procedure274
(magnitude num)procedure183
(make-assertion-violation)procedure366
(make-bytevector n)procedure228
(make-bytevector n fill)procedure228
(make-custom-binary-input-port id r! gp sp! close)procedure267
(make-custom-binary-input/output-port id r! w! gp sp! close)procedure267
(make-custom-binary-output-port id w! gp sp! close)procedure267
(make-custom-textual-input-port id r! gp sp! close)procedure268
(make-custom-textual-input/output-port id r! w! gp sp! close)procedure268
(make-custom-textual-output-port id w! gp sp! close)procedure268
(make-enumeration symbol-list)procedure251
(make-eq-hashtable)procedure243
(make-eq-hashtable size)procedure243
(make-eqv-hashtable)procedure244
(make-eqv-hashtable size)procedure244
(make-error)procedure367
(make-hashtable hash equiv?)procedure244
(make-hashtable hash equiv? size)procedure244
(make-i/o-decoding-error pobj)procedure375
(make-i/o-encoding-error pobj cobj)procedure376
(make-i/o-error)procedure371
(make-i/o-file-already-exists-error filename)procedure374
(make-i/o-file-does-not-exist-error filename)procedure374
(make-i/o-file-is-read-only-error filename)procedure374
(make-i/o-file-protection-error filename)procedure373
(make-i/o-filename-error filename)procedure373
(make-i/o-invalid-position-error position)procedure372
(make-i/o-port-error pobj)procedure375
(make-i/o-read-error)procedure372
(make-i/o-write-error)procedure372
(make-implementation-restriction-violation)procedure369
(make-irritants-condition irritants)procedure368
(make-lexical-violation)procedure370
(make-message-condition message)procedure368
(make-no-infinities-violation)procedure376
(make-no-nans-violation)procedure377
(make-non-continuable-violation)procedure369
(make-polar real1 real2)procedure183
(make-record-constructor-descriptor rtd parent-rcd protocol)procedure332
(make-record-type-descriptor name parent uid s? o? fields)procedure331
(make-rectangular real1 real2)procedure182
(make-serious-condition)procedure366
(make-string n)procedure218
(make-string n char)procedure218
(make-syntax-violation form subform)procedure370
(make-transcoder codec)procedure259
(make-transcoder codec eol-style)procedure259
(make-transcoder codec eol-style error-handling-mode)procedure259
(make-undefined-violation)procedure371
(make-variable-transformer procedure)procedure306
(make-vector n)procedure224
(make-vector n obj)procedure224
(make-violation)procedure366
(make-warning)procedure367
(make-who-condition who)procedure369
(map procedure list1 list2 ...)procedure117
(max real1 real2 ...)procedure178
(member obj list)procedure161
(memp procedure list)procedure163
(memq obj list)procedure161
(memv obj list)procedure161
(message-condition? obj)procedure368
(min real1 real2 ...)procedure178
(mod x1 x2)procedure175
(mod0 x1 x2)procedure176
(modulo int1 int2)procedure175
mutablesyntax331
(nan? real)procedure174
(native-endianness)procedure228
(native-eol-style)procedure260
(native-transcoder)procedure259
(negative? real)procedure173
(newline)procedure285
(newline textual-output-port)procedure285
(no-infinities-violation? obj)procedure376
(no-nans-violation? obj)procedure377
(non-continuable-violation? obj)procedure369
nongenerativesyntax331
(not obj)procedure110
(null-environment version)procedure137
(null? obj)procedure151
(number->string num)procedure191
(number->string num radix)procedure191
(number->string num radix precision)procedure191
(number? obj)procedure151
(numerator rat)procedure181
(odd? int)procedure174
opaquesyntax331
(open-bytevector-input-port bytevector)procedure264
(open-bytevector-input-port bytevector ?transcoder)procedure264
(open-bytevector-output-port)procedure265
(open-bytevector-output-port ?transcoder)procedure265
(open-file-input-port path)procedure262
(open-file-input-port path options)procedure262
(open-file-input-port path options b-mode)procedure262
(open-file-input-port path options b-mode ?transcoder)procedure262
(open-file-input/output-port path)procedure263
(open-file-input/output-port path options)procedure263
(open-file-input/output-port path options b-mode)procedure263
(open-file-input/output-port path options b-mode ?transcoder)procedure263
(open-file-output-port path)procedure262
(open-file-output-port path options)procedure262
(open-file-output-port path options b-mode)procedure262
(open-file-output-port path options b-mode ?transcoder)procedure262
(open-input-file path)procedure280
(open-output-file path)procedure281
(open-string-input-port string)procedure265
(open-string-output-port)procedure266
(or expr ...)syntax110
(output-port-buffer-mode port)procedure273
(output-port? obj)procedure270
(pair? obj)procedure151
parentsyntax331
parent-rtdsyntax331
(partition procedure list)procedure164
(peek-char)procedure284
(peek-char textual-input-port)procedure284
(port-eof? input-port)procedure278
(port-has-port-position? port)procedure271
(port-has-set-port-position!? port)procedure272
(port-position port)procedure271
(port-transcoder port)procedure271
(port? obj)procedure270
(positive? real)procedure173
(expr0 expr1 ...)syntax107
(procedure? obj)procedure155
protocolsyntax331
(put-bytevector binary-output-port bytevector)procedure279
(put-bytevector binary-output-port bytevector start)procedure279
(put-bytevector binary-output-port bytevector start n)procedure279
(put-char textual-output-port char)procedure279
(put-datum textual-output-port obj)procedure279
(put-string textual-output-port string)procedure279
(put-string textual-output-port string start)procedure279
(put-string textual-output-port string start n)procedure279
(put-u8 binary-output-port octet)procedure278
(quasiquote obj ...)syntax142
(quasisyntax template ...)syntax305
(quote obj)syntax141
(quotient int1 int2)procedure175
(raise obj)procedure357
(raise-continuable obj)procedure357
(rational-valued? obj)procedure153
(rational? obj)procedure151
(rationalize real1 real2)procedure181
(read)procedure284
(read textual-input-port)procedure284
(read-char)procedure284
(read-char textual-input-port)procedure284
(real->flonum real)procedure211
(real-part num)procedure182
(real-valued? obj)procedure153
(real? obj)procedure151
(record-accessor rtd idx)procedure334
(record-constructor rcd)procedure333
(record-constructor-descriptor record-name)syntax333
(record-field-mutable? rtd idx)procedure338
(record-mutator rtd idx)procedure334
(record-predicate rtd)procedure333
(record-rtd record)procedure338
(record-type-descriptor record-name)syntax333
(record-type-descriptor? obj)procedure332
(record-type-field-names rtd)procedure337
(record-type-generative? rtd)procedure337
(record-type-name rtd)procedure336
(record-type-opaque? rtd)procedure337
(record-type-parent rtd)procedure336
(record-type-sealed? rtd)procedure337
(record-type-uid rtd)procedure336
(record? obj)procedure338
(remainder int1 int2)procedure175
(remove obj list)procedure163
(remp procedure list)procedure163
(remq obj list)procedure163
(remv obj list)procedure163
(reverse list)procedure161
(round real)procedure178
(scheme-report-environment version)procedure137
sealedsyntax331
(serious-condition? obj)procedure366
(set! var expr)syntax102
(set-car! pair obj)procedure157
(set-cdr! pair obj)procedure157
(set-port-position! port pos)procedure272
(simple-conditions condition)procedure363
(sin num)procedure185
(sint-list->bytevector list eness size)procedure239
(sqrt num)procedure183
(standard-error-port)procedure264
(standard-input-port)procedure264
(standard-output-port)procedure264
(string char ...)procedure218
(string->bytevector string transcoder)procedure287
(string->list string)procedure222
(string->number string)procedure191
(string->number string radix)procedure191
(string->symbol string)procedure242
(string->utf16 string)procedure287
(string->utf16 string endianness)procedure287
(string->utf32 string)procedure287
(string->utf32 string endianness)procedure287
(string->utf8 string)procedure287
(string-append string ...)procedure219
(string-ci-hash string)procedure245
(string-ci<=? string1 string2 string3 ...)procedure217
(string-ci<? string1 string2 string3 ...)procedure217
(string-ci=? string1 string2 string3 ...)procedure217
(string-ci>=? string1 string2 string3 ...)procedure217
(string-ci>? string1 string2 string3 ...)procedure217
(string-copy string)procedure219
(string-downcase string)procedure221
(string-fill! string char)procedure220
(string-foldcase string)procedure221
(string-for-each procedure string1 string2 ...)procedure122
(string-hash string)procedure245
(string-length string)procedure218
(string-normalize-nfc string)procedure222
(string-normalize-nfd string)procedure222
(string-normalize-nfkc string)procedure222
(string-normalize-nfkd string)procedure222
(string-ref string n)procedure218
(string-set! string n char)procedure219
(string-titlecase string)procedure221
(string-upcase string)procedure221
(string<=? string1 string2 string3 ...)procedure216
(string<? string1 string2 string3 ...)procedure216
(string=? string1 string2 string3 ...)procedure216
(string>=? string1 string2 string3 ...)procedure216
(string>? string1 string2 string3 ...)procedure216
(string? obj)procedure154
(substring string start end)procedure220
(symbol->string symbol)procedure242
(symbol-hash symbol)procedure245
(symbol=? symbol1 symbol2)procedure242
(symbol? obj)procedure154
(syntax template)syntax300
(syntax->datum obj)procedure308
(syntax-case expr (literal ...) clause ...)syntax299
(syntax-rules (literal ...) clause ...)syntax294
(syntax-violation who msg form)procedure359
(syntax-violation who msg form subform)procedure359
(syntax-violation-form condition)procedure370
(syntax-violation-subform condition)procedure370
(syntax-violation? obj)procedure370
(tan num)procedure185
(textual-port? obj)procedure270
(transcoded-port binary-port transcoder)procedure271
(transcoder-codec transcoder)procedure259
(transcoder-eol-style transcoder)procedure259
(transcoder-error-handling-mode transcoder)procedure259
(truncate real)procedure177
(u8-list->bytevector list)procedure232
(uint-list->bytevector list eness size)procedure239
(undefined-violation? obj)procedure371
(unless test-expr expr1 expr2 ...)syntax112
(unquote obj ...)syntax142
(unquote-splicing obj ...)syntax142
(unsyntax template ...)syntax305
(unsyntax-splicing template ...)syntax305
(utf-16-codec)procedure259
(utf-8-codec)procedure259
(utf16->string bytevector endianness)procedure288
(utf16->string bytevector endianness endianness-mandatory?)procedure288
(utf32->string bytevector endianness)procedure288
(utf32->string bytevector endianness endianness-mandatory?)procedure288
(utf8->string bytevector)procedure287
(values obj ...)procedure131
variablesyntax91
(vector obj ...)procedure224
(vector->list vector)procedure225
(vector-fill! vector obj)procedure225
(vector-for-each procedure vector1 vector2 ...)procedure122
(vector-length vector)procedure224
(vector-map procedure vector1 vector1 ...)procedure121
(vector-ref vector n)procedure224
(vector-set! vector n obj)procedure225
(vector-sort predicate vector)procedure226
(vector-sort! predicate vector)procedure226
(vector? obj)procedure154
(violation? obj)procedure366
(warning? obj)procedure367
(when test-expr expr1 expr2 ...)syntax112
(who-condition? obj)procedure369
(with-exception-handler procedure thunk)procedure360
(with-input-from-file path thunk)procedure283
(with-output-to-file path thunk)procedure283
(with-syntax ((pattern expr) ...) body1 body2 ...)syntax304
(write obj)procedure284
(write obj textual-output-port)procedure284
(write-char char)procedure285
(write-char char textual-output-port)procedure285
(zero? num)procedure173

R. Kent Dybvig / The Scheme Programming Language, Fourth Edition
Copyright © 2009 The MIT Press. Electronically reproduced by permission.
Illustrations © 2009 Jean-Pierre Hébert
ISBN 978-0-262-51298-5 / LOC QA76.73.S34D93
to order this book / about this book

http://www.scheme.com