-@node Language, Expressions, Invocation, Top
+@node Language
@chapter The PSPP language
@cindex language, PSPP
@cindex PSPP, language
* BNF:: How command syntax is described.
@end menu
-@node Tokens, Commands, Language, Language
+@node Tokens
@section Tokens
@cindex language, lexical analysis
@cindex language, tokens
the default setting is in effect.
@end table
-@node Commands, Types of Commands, Tokens, Language
+@node Commands
@section Forming commands of tokens
@cindex PSPP, command structure
which allows for visual indentation of a command without that command
being considered part of the previous command.
-@node Types of Commands, Order of Commands, Commands, Language
+@node Types of Commands
@section Types of Commands
Commands in PSPP are divided roughly into six categories:
active file (the data) to be read.
@end table
-@node Order of Commands, Missing Observations, Types of Commands, Language
+@node Order of Commands
@section Order of Commands
@cindex commands, ordering
@cindex order of commands
@end itemize
@end table
-@node Missing Observations, Variables, Order of Commands, Language
+@node Missing Observations
@section Handling missing observations
@cindex missing values
@cindex values, missing
documentation on individual procedures for information on how they
handle missing values.
-@node Variables, Files, Missing Observations, Language
+@node Variables
@section Variables
@cindex variables
@cindex dictionary
* Scratch Variables:: Variables deleted by procedures.
@end menu
-@node Attributes, System Variables, Variables, Variables
+@node Attributes
@subsection Attributes of Variables
@cindex variables, attributes of
@cindex attributes of variables
(@pxref{WRITE}).
@end table
-@node System Variables, Sets of Variables, Attributes, Variables
+@node System Variables
@subsection Variables Automatically Defined by PSPP
@cindex system variables
@cindex variables, system
Page width, in characters, in format F3.
@end table
-@node Sets of Variables, Input and Output Formats, System Variables, Variables
+@node Sets of Variables
@subsection Lists of variable names
-@cindex TO convention
-@cindex convention, TO
+@cindex @code{TO} convention
+@cindex convention, @code{TO}
To refer to a set of variables, list their names one after another.
Optionally, their names may be separated by commas. To include a
another command with this method, the same set can be referenced on
later commands using the same syntax.
-@node Input and Output Formats, Scratch Variables, Sets of Variables, Variables
+@node Input and Output Formats
@subsection Input and Output Formats
+@cindex formats
An @dfn{input format} describes how to interpret the contents of an
input field as a number or a string. It might specify that the field
contains an ordinary decimal number, a time or date, a number in binary
@node Basic Numeric Formats
@subsubsection Basic Numeric Formats
+@cindex numeric formats
The basic numeric formats are used for input and output of real numbers
in standard or scientific notation. The following table shows an
example of how each format displays positive and negative numbers with
@float
@multitable {DOLLAR10.2} {@code{@tie{}$3,141.59}} {@code{-$3,141.59}}
-@headitem Format @tab @code{@tie{}}3141.59 @tab -3141.59
+@headitem Format @tab @code{@tie{}3141.59} @tab @code{-3141.59}
@item F8.2 @tab @code{@tie{}3141.59} @tab @code{-3141.59}
@item COMMA9.2 @tab @code{@tie{}3,141.59} @tab @code{-3,141.59}
@item DOT9.2 @tab @code{@tie{}3.141,59} @tab @code{-3.141,59}
@node Custom Currency Formats
@subsubsection Custom Currency Formats
+@cindex currency formats
The custom currency formats are closely related to the basic numeric
formats, but they allow users to customize the output format. The
SET command configures custom currency formats, using the syntax
@float
@multitable {CCD13.2} {@code{@tie{}@tie{}USD 3,145.59}} {@code{(USD 3,145.59)}}
-@headitem Format @tab @code{@tie{}}3145.59 @tab -3145.59
+@headitem Format @tab @code{@tie{}3145.59} @tab @code{-3145.59}
@item CCA12.2 @tab @code{@tie{}EUR3,145.59} @tab @code{EUR3,145.59-}
@item CCB14.2 @tab @code{@tie{}@tie{}USD 3,145.59} @tab @code{(USD 3,145.59)}
@item CCC11.2 @tab @code{@tie{}R$3.145,59} @tab @code{-R$3.145,59}
@node Binary and Hexadecimal Numeric Formats
@subsubsection Binary and Hexadecimal Numeric Formats
+@cindex binary formats
+@cindex hexadecimal formats
The binary and hexadecimal formats are primarily designed for
compatibility with existing machine formats, not for human readability.
All of them therefore have a F format as default output format. Some of
@node Time and Date Formats
@subsubsection Time and Date Formats
+@cindex time formats
+@cindex date formats
In PSPP, a @dfn{time} is an interval. The time formats translate
between human-friendly descriptions of time intervals and PSPP's
internal representation of time intervals, which is simply the number of
@node String Formats
@subsubsection String Formats
+@cindex string formats
The A and AHEX formats are the only ones that may be assigned to string
variables. Neither format allows any decimal places.
input, uppercase and lowercase are both accepted. The default output
format is A format with half the input width.
-@node Scratch Variables, , Input and Output Formats, Variables
+@node Scratch Variables
@subsection Scratch Variables
+@cindex scratch variables
Most of the time, variables don't retain their values between cases.
Instead, either they're being read from a data file or the active file,
in which case they assume the value read, or, if created with