.help spp Jan83 "IRAF Subset Preprocessor Language" .ce Contents .rj 1 1. Introduction .rj 1 2. Getting Started .rj 2 3. Fundamentals of the Language .in 5 .rj 2 3.1 Lexical Form .in 5 .rj 2 3.1.1 comments .rj 2 3.1.2 continuation .rj 2 3.1.3 integer constants .rj 3 3.1.4 floating point constants .rj 3 3.1.5 character constants .rj 4 3.1.6 string constants .rj 4 3.1.7 identifiers .in -5 .rj 4 3.2 Data Types .rj 5 3.3 Declarations .in 5 .rj 5 3.3.1 variable, array, and procedure declarations .rj 6 3.3.2 array declarations .rj 6 3.3.3 string declarations .rj 7 3.3.4 global common declarations .rj 7 3.3.5 procedure declarations .in 5 .rj 8 example 1: the sinc function .in -5 .rj 8 3.3.6 multiple entry points .in 5 .rj 9 example 2: multiple entry points .in -5 .in -5 .rj 9 3.4 Initialization .rj 9 3.5 Control Flow Constructs .in 5 .rj 10 3.5.1 conditional execution .rj 11 3.5.2 error handling .rj 13 3.5.3 repetitive execution .in -5 .rj 15 3.6 Expressions .in 5 .rj 16 3.6.1 mixed mode expressions .rj 16 3.6.2 type coercion .in -5 .rj 16 3.7 The Assignment Statement .rj 16 3.8 Some Examples .in 5 .rj 17 example 3: length of a string .rj 17 example 4: min and max of a real array .in -5 .rj 18 3.9 Program Structure .in 5 .rj 19 3.9.1 include files .rj 19 3.9.2 macro definitions .rj 20 3.9.3 the task statement, and tasks .rj 22 3.9.4 help text .in -5 .in -5 .rj 22 4. Anachronisms .rj 23 5. Notes on Topics not Discussed .rj 24 APPENDIX A: Predefined Constants .rj 25 APPENDIX B: Detailed Examples .in 5 .rj 25 Example 5: Matrix Inversion .rj 28 Example 6: Pattern Matching .rj 31 Example 7: Error Handling .endhelp