(r5rs.info.gz) Entry format
Info Catalog
(r5rs.info.gz) Error situations and unspecified behavior
(r5rs.info.gz) Notation and terminology
(r5rs.info.gz) Evaluation examples
1.3.3 Entry format
------------------
Chapters Expressions and Standard procedures are
organized into entries. Each entry describes one language feature or a
group of related features, where a feature is either a syntactic
construct or a built-in procedure. An entry begins with one or more
header lines of the form
-- CATEGORY: TEMPLATE
for required, primitive features, or
-- QUALIFIER CATEGORY: TEMPLATE
where QUALIFIER is either "library" or "optional" as defined in
section Primitive; library; and optional features.
If CATEGORY is "syntax", the entry describes an expression type, and
the template gives the syntax of the expression type. Components of
expressions are designated by syntactic variables, which are written
using angle brackets, for example, <expression>, <variable>. Syntactic
variables should be understood to denote segments of program text; for
example, <expression> stands for any string of characters which is a
syntactically valid expression. The notation
<thing1> ...
indicates zero or more occurrences of a <thing>, and
<thing1> <thing2> ...
indicates one or more occurrences of a <thing>.
If CATEGORY is "procedure", then the entry describes a procedure, and
the header line gives a template for a call to the procedure. Argument
names in the template are ITALICIZED. Thus the header line
-- procedure: vector-ref VECTOR K
indicates that the built-in procedure vector-ref takes two arguments, a
vector VECTOR and an exact non-negative integer K (see below). The
header lines
-- procedure: make-vector K
-- procedure: make-vector K FILL
indicate that the make-vector procedure must be defined to take either
one or two arguments.
It is an error for an operation to be presented with an argument that it
is not specified to handle. For succinctness, we follow the convention
that if an argument name is also the name of a type listed in section
Disjointness of types, then that argument must be of the named
type. For example, the header line for vector-ref given above dictates
that the first argument to vector-ref must be a vector. The following
naming conventions also imply type restrictions:
begin-tabular
OBJ
any object
LIST, LIST1, ... LISTJ, ...
list (see section Pairs and lists)
Z, Z1, ... ZJ, ...
complex number
X, X1, ... XJ, ...
real number
Y, Y1, ... YJ, ...
real number
Q, Q1, ... QJ, ...
rational number
N, N1, ... NJ, ...
integer
K, K1, ... KJ, ...
exact non-negative integer
Info Catalog
(r5rs.info.gz) Error situations and unspecified behavior
(r5rs.info.gz) Notation and terminology
(r5rs.info.gz) Evaluation examples
automatically generated byinfo2html