SPP Reference Manual
The Subset Preprocessor Language (SPP) is a programming language
designed to develop applications in the IRAF programming environment.
This is a reference manual intended to explain the language sufficiently to
allow a programmer to develop useful applications. As such, it comprises
two fundamental parts. The first is a detailed reference describing the lan-
guage's features, syntax, and structure. The other is a fairly complete
description of the interfaces to the IRAF environment. Separate chapters
are devoted to error handling and making IRAF tasks. Four appendixes
cover the system defined include files, detailed examples and other helpful
hints, and utilities for debugging applications code. Appendix E describest
the STSDAS tables utilities. Simple examples of specific concepts are
scattered throughout this text. These are usually fragments of code
intended to illustrate the concept under discussion. However, Appendix B
contains a few complete examples.
This is not a programming textbook. It is assumed that the reader is con-
versant with some programming language. Because of the similarity of
SPP to Fortran and C, experience with those languages is certainly an asset.
It is also assumed that the reader is familiar with IRAF to some extent. That
is, that there is some experience with the concepts behind the structure of
programs and rationale for the system. In addition, some knowledge of the
IRAF command language (cl) is assumed.
Some comments on the syntax in this text may be useful.
SPP is a part of the IRAF application environment. IRAF was devel-
oped by the National Optical Astronomy Observatories (NOAO), primarily
for the analysis of astronomical data. Doug Tody is primarily responsible
for the design and management of the IRAF core system, including SPP.
Additional examples of how to develop IRAF applications code can be
found in An Introductory User's Guide to IRAF SPP Programming by R.
- Literal text and reserved keywords to be used in code as-is are set in
typewriter style to distinguish them from names of objects and real
English words. For example, procedure, pointer, or maxch are
keywords that may be used in SPP code. Another example is a directory
or file name, which, as literal text, would be set in typewriter style:
- When a reserved word ends in an italicized capital T,
the T is a place-holder intended
to be replaced by a data type character.
These data type specifiers
- x - Complex
- d - Double
- l - Long
- s - String
- c - Char
- Package names are set in bold face, for example, cl or
- Generic names for entities replaced by some specific keyword are set in
italic style, such as a template syntax: for (init; test; control)
demonstrating the for syntax.
- Square brackets used in a template ([ ... ]) surround optional text.
- Function names are usually referred to in the text without arguments but
with empty parentheses to distinguish them from other identifiers.
Chapter 1 of this manual is based largely on Doug Tody's A Reference
Manual for the IRAF Subset Preprocessor [Tody83]. Chapter 2 draws from
the design documents for the various interfaces, and Appendix E is based
on earlier document by the STSDAS Group.
Generated with CERN WebMaker