式の評価

評価とは

「萌香」は与えられたものを評価し、その値を返すという動作を ひたすら繰り返します。

かっこで囲まれたものが与えられた場合、その最後のものを 命令と判断し、そのかっこ内を評価します。 その最後のもの以外を引数と呼びます。

命令は大きく分けて、文法(syntax)と関数(function)があります。 文法が与えられた場合、引数はその文法に与えられます。 関数が与えられた場合、引数は評価されてから関数に渡されます。

以下のプログラムを実行して下さい。

Plus.hnk

「「1 2 たす」 を 表示 します」

ここで、"を"、"します"は無視される語句なので無視して下さい。 すると、

「「1 2 たす」 表示」

となります。 表示が一つの引数を取り、それを表示する関数ですので"「1 2 たす」"が その引数であることがわかります。 関数ですので、その引数は関数に渡される前に評価されます。 したがって、"「1 2 たす」"がまず評価され、 (ふいんき <-- なぜか変換できない でわかると思いますが評価した 結果は3になります。)表示されます。

実行して"3.0"と表示されたでしょうか ?

この入れ子はいくらでも深くできます。以下のプログラムを実行して下さい。

「「「1 2 たす」
    「3 4 たす」 たす」
   を 表示 する」

実行結果は10.0になったでしょうか。