Chapters:
1: Introduction
2: Simple example
3: Invocation
4: Finer Control
5: X-Y Plots
6: Contour Plots
7: Image Plots
8: Examples
9: Gri Commands
10: Programming
11: Environment
12: Emacs Mode
13: History
14: Installation
15: Gri Bugs
16: Test Suite
17: Gri in Press
18: Acknowledgments
19: License
Indices:
Concepts
Commands
Variables

# 10: Programming in the Gri Language

The Gri programming language has ``if`' statements to control program flow, and a ``while`' statement to repeat commands. There are two data types in Gri: ``variables'' (to store numbers) and ``synonyms'' (to store character strings). Gri recognizes commands by matching statements against its list of known commands. This list is extensible; it is easy to add new commands as extensions to Gri.

- Defaults: How Gri normally acts
- Online Help: Getting help from gri itself
- Long Command Lines: Continued lines
- Variables: Variables (for storing numbers)
- Synonyms: Synonyms (for storing character strings)
- If Statements: If statements
- Loops: Repeating command lines
- Mathematics: Doing mathematics on columns, grids etc
- rpn Mathematics: Doing mathematics on variables
- Text: Doing things with characters strings
- Adding New Commands: How to customize Gri by adding new commands
- Missing Values: How to specify missing data
- Hints: Hints for good Gri programming
- Debugging: Debugging Gri programs
- Error Messages: What to do about Gri error messages
- Missing Values: Missing value code
- Operating System: Using Gri in OS and OS in Gri
- Resource File: Personalizing Gri