Revised^4 Report on the Algorithmic Language Scheme. (1991)



quote, lambda, if, set!

Derived expression types

cond, case, and, or, let, let*, letrec, begin, do, delay, quasiquote

Program Structure


Standard Procedures


not, boolean?

Equivalence Predicates

eqv?, eq?, equal?

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


symbol?, symbol->string, string->symbol


number?, complex?, real?, rational?, integer?, exact?, inexact?, =, <, >, <=, >=, zero?, positive?, negative?, odd?, even?, max, min, +, *, -, /, abs, quotient, remainder, modulo, gcd, lcm, numerator, denominator, floor, ceiling, truncate, round, rationalize, exp, log, sin, cos, tan, asin, acos, atan, sqrt, expt, make-rectangular, make-polar, real-part, imag-part, magnitude, angle, exact->inexact, inexact->exact, number->string, string->number


char?, char=?, char<?, char>?, char<=?, char>=?, char-ci=?, char-ci<?, char-ci>?, char-ci<=?, char-ci>=?, char-alphabetic?, char-numeric?, char-whitespace?, char-upper-case?, char-lower-case?, char->integer, integer->char, char-upcase, char-downcase


string?, make-string, string, string-length, string-ref, string-set!, string=?, string-ci=?, string<?, string>?, string<=?, string>=?, string-ci<?, string-ci>?, string-ci<=?, string-ci>=?, substring, string-append, string->list, list->string, string-copy, string-fill!


vector?, make-vector, vector, vector-length, vector-ref, vector-set!, vector->list, list->vector, vector-fill!

Control features

procedure?, apply, map, for-each, force, call-with-current-continuation

Input and output

call-with-input-file, call-with-output-file, input-port?, output-port?, current-input-port, current-output-port, with-input-from-file, with-output-to-file, open-input-file, open-output-file, close-input-port, close-output-port, read, read-char, peek-char, eof-object?, char-ready? write, display, newline, write-char load, transcript-on, transcript-off