Standard Forms |
Definition |
define |
|
Binding Constructs |
lambda, do (L), let (L), let* (L), letrec (L) |
|
Conditional Evaluation |
if, cond (L), case (L), and (L), or (L) |
|
Sequential Evaluation |
begin (*) |
|
Iteration |
lambda, do (L), named let (L) |
|
Syntactic Extension |
define-syntax, let-syntax, letrec-syntax, syntax-rules (R5RS), syntax-case (R6RS) |
|
Quoting |
quote('), unquote(,), quasiquote(`), unquote-splicing(,@) |
|
Assignment |
set! |
|
Delayed Evaluation |
delay (L) |
Standard Procedures |
Construction |
vector, make-vector, make-string, list |
|
Equivalence Predicates |
eq?, eqv?, equal?, string=?, string-ci=?, char=?, char-ci=? |
|
Type Conversion |
vector->list, list->vector, number->string, string->number, symbol->string, string->symbol, char->integer, integer->char, string->list, list->string |
|
Strings |
string?, make-string, string, string-length, string-ref, string-set!, string=?, string-ci=?, string<?, string-ci<?, string<=?, string-ci<=?, string>?, string-ci>?, string>=?, string-ci>=?, substring, string-append, string-copy, string-fill! |
|
Characters |
char?, char=?, char-ci=?, char<?, char-ci<?, char<=?, char-ci<=?, char>?, char-ci>?, char>=?, char-ci>=?, char-alphabetic?, char-numeric?, char-whitespace?, char-upper-case?, char-lower-case?, char->integer, integer->char, char-upcase, char-downcase |
|
Vectors |
make-vector, vector, vector?, vector-length, vector-ref, vector-set!, vector->list, list->vector, vector-fill! |
|
Symbols |
symbol->string, string->symbol, symbol? |
|
Pairs and Lists |
pair?, cons, car, cdr, set-car!, set-cdr!, null?, list?, list, length, append, reverse, list-tail, list-ref, memq, memv, member, assq, assv, assoc, list->vector, vector->list, list->string, string->list |
|
Identity Predicates |
boolean?, pair?, symbol?, number?, char?, string?, vector?, port?, procedure? |
|
Continuations |
call-with-current-continuation (call/cc), values, call-with-values, dynamic-wind |
|
Environments |
eval, scheme-report-environment, null-environment, interaction-environment (optional) |
|
Input/Output |
display, newline, read, write, read-char, write-char, peek-char, char-ready?, eof-object?, open-input-file, open-output-file, close-input-port, close-output-port, input-port?, output-port?, current-input-port, current-output-port, call-with-input-file, call-with-output-file, with-input-from-file (optional), with-output-to-file (optional) |
|
System Interface |
load (optional), transcript-on (optional), transcript-off (optional) |
|
Delayed Evaluation |
force |
|
Functional Programming |
procedure?, apply, map, for-each |
|
Booleans |
boolean?, not |
Standard Numeric Procedures |
Basic Arithmetic Operators |
+, -, *, /, abs, quotient, remainder, modulo, gcd, lcm, expt, sqrt |
|
Rational Numbers |
numerator, denominator, rational?, rationalize |
|
Approximation |
floor, ceiling, truncate, round |
|
Exactness |
inexact->exact, exact->inexact, exact?, inexact? |
|
Inequalities |
<, <=, >, >=, = |
|
Miscellaneous Predicates |
zero?, negative?, positive?, odd?, even? |
|
Maximum and Minimum |
max, min |
|
Trigonometry |
sin, cos, tan, asin, acos, atan |
|
Exponentials |
exp, log |
|
Complex Numbers |
make-rectangular, make-polar, real-part, imag-part, magnitude, angle, complex? |
|
Input-Output |
number->string, string->number |
|
Type Predicates |
integer?, rational?, real?, complex?, number? |