関数の組み合わせ
すべてのスクリプトが実際には単一の関数とその引数で構成されているという事実に驚かれるかもしれません。一見すると、この要件によってスクリプトの機能が制限されるように見えるかもしれません。しかし、関数は引数を持つことができ、その引数の一部は関数である場合もあることを覚えておいてください。例えば、の平方根をの正弦に加算したいとします。Add関数は単一の関数ですが、その引数も関数です。しかし、これは非常に制限されたスクリプトです。では、すべてのJMPスクリプトを構成する単一の関数とは何でしょうか?それはGlue関数と呼ばれ、複数の関数を1つの関数に結合できます。簡単な例として、xという変数に値を代入し、JMPでその変数の正弦を計算したいとします。Glue関数は、2つ以上の関数を1つの関数に結合します。Glue関数の最初の引数はAssign関数です。Assign関数は、変数名と値の2つの引数を取り、変数xに値を代入します。 Glue関数の2番目の引数は、引数xを1つ持つSine関数になります。Glue関数は各引数を順番に評価し、最後の引数の結果を返します。スクリプトを書いたことがある方、同僚のスクリプト、JMPで書かれたスクリプトを見たことがある方なら、Glueという単語で始まるスクリプトを見たことがないかもしれません。これは、他の多くの関数と同様に、Glueにも同等の演算子、つまりセミコロンがあるからです。多くのプログラミング言語では、セミコロンは文の終わりを示します。しかし、JSLでは、セミコロンはグルー演算子であり、パーサーにさらに引数があることを伝えます。つまり、x = セミコロン Sine(x)は、Assign関数とSine関数を引数として持つGlue関数と同等です。このようにして、複数の関数を1つの関数、つまりスクリプトに組み合わせることができます。JMPには多くの関数が組み込まれています。それらについて詳しく知るには、「ヘルプ」メニューにある「スクリプト索引」をご覧ください。