r7rs-small-texinfo

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

commit a0f22b53cfce6a9d96c7ac8b429e3b70b6c8bb8f
parent 21c548b3ee0723704930ca30fc980aeae02eeb91
Author: Wolfgang Corcoran-Mathe <wcm@sigwinch.xyz>
Date:   Tue, 30 Jan 2024 15:26:19 -0500

Semantic markup in section 3.1.

Diffstat:
Mdoc/r7rs-small/r7rs-small.texinfo | 26+++++++++++++-------------
1 file changed, 13 insertions(+), 13 deletions(-)

diff --git a/doc/r7rs-small/r7rs-small.texinfo b/doc/r7rs-small/r7rs-small.texinfo @@ -837,32 +837,32 @@ In particular, it is an error for quasiquote (section 4.2.8) to contain them. @section Variables, syntactic keywords, and regions An identifier can name either a type of syntax or a location where a value can be stored. An -identifier that names a type of syntax is called a syntactic keyword and is said to be bound to -a transformer for that syntax. An identifier that names a location is called a variable and is -said to be bound to that location. The set of all visible bindings in effect at some point in a -program is known as the environment in effect at that point. The value stored in the +identifier that names a type of syntax is called a @dfn{syntactic keyword} and is said to be @dfn{bound} to +a transformer for that syntax. An identifier that names a location is called a @dfn{variable} and is +said to be @dfn{bound} to that location. The set of all visible bindings in effect at some point in a +program is known as the @dfn{environment} in effect at that point. The value stored in the location to which a variable is bound is called the variable's value. By abuse of terminology, the variable is sometimes said to name the value or to be bound to the value. This is not quite accurate, but confusion rarely results from this practice. Certain expression types are used to create new kinds of syntax and to bind syntactic keywords to those new syntaxes, while other expression types create new locations and -bind variables to those locations. These expression types are called binding constructs. +bind variables to those locations. These expression types are called @dfn{binding constructs}. Those that bind syntactic keywords are listed in section 4.3. The most fundamental of the -variable binding constructs is the lambda expression, because all other variable binding -constructs (except top-level bindings) can be explained in terms of lambda expressions. -The other variable binding constructs are let, let*, letrec, letrec*, let-values, let*-values, -and do expressions (see sections 4.1.4, 4.2.2, and 4.2.4). +variable binding constructs is the @code{lambda} expression, because all other variable binding +constructs (except top-level bindings) can be explained in terms of @code{lambda} expressions. +The other variable binding constructs are @code{let}, @code{let*}, @code{letrec}, @code{letrec*}, @code{let-values}, @code{let*-values}, +and @code{do} expressions (see sections 4.1.4, 4.2.2, and 4.2.4). Scheme is a language with block structure. To each place where an identifier is bound in a -program there corresponds a region of the program text within which the binding is +program there corresponds a @dfn{region} of the program text within which the binding is visible. The region is determined by the particular binding construct that establishes the -binding; if the binding is established by a lambda expression, for example, then its region -is the entire lambda expression. Every mention of an identifier refers to the binding of the +binding; if the binding is established by a @code{lambda} expression, for example, then its region +is the entire @code{lambda} expression. Every mention of an identifier refers to the binding of the identifier that established the innermost of the regions containing the use. If there is no binding of the identifier whose region contains the use, then the use refers to the binding for the variable in the global environment, if any (chapters 4 and 6); if there is no binding -for the identifier, it is said to be unbound. +for the identifier, it is said to be @dfn{unbound}. @node Disjointness of types @section Disjointness of types