@a: Begin code part of unnamed section, and mark
@a begins the code part of an unnamed section (just as does
@A), and in addition marks the next unreserved identifier it
finds as defined in this section. Precisely,
@a==@A@[
Originally, FWEB did not contain the @A command, so when
the functionality of automatically marking the next unreserved
identifier (see AT[) was added, it was natural to add it to @a. A
reasonable style of coding is to always use @a if you don't know
any better; if you sometime run into trouble, you can then change
selected @as to @As. For example, it is appropriate to
use @a if one codes one function per section. E.g.,
@c
@
@a
int
subrtn()
{}
Here the @a marks subrtn as defined in this section; if
that identifier is used elsewhere, it will be subscripted with the
section number. (To turn this feature off, use -f; see -f.)
However, if a section contains an arbitrary code fragment, the code part should
probably begin with @A. E.g.,
@c
@
@A
x = y;
If one had used @a here, the x would have been marked as
defined here, which is not what one wants.