保存された式(expression)は、マクロとして使用することも可能です。汎用的な処理を式として変数に保存しておくと、その変数を呼び出せばいつでも中の汎用的な処理を実行できます。この例では、Ifの引数として4つのマクロ(グローバル変数)を指定しています。
lastStdzdThickness=expr(
(thickness[nrow()]-col mean(thickness)) / col std dev(thickness));
continue=expr(...<データを読み込むスクリプト>...);
log=expr(print(char( long date(today()))||" の分です。"));
limitvalue=1;
if(lastStdzdThickness<limitvalue,log;continue,break);
Exprを使って式を保存すると、その式はスクリプトそのもので、その時点では評価されません。式を保存した変数を実際に呼び出すまで、評価は行われません。式に含まれているすべての変数、データ、または式は、式の実行時に初めて評価されます。式を保存し、後で評価するときの詳細なルールについては、第 “保存された式”を参照してください。