APL/J言語:コンポジション(フックとフォークベース)
動詞は2個、3個並べるだけであらたな動詞となります。その際の作用は、下記のようなダイアグラムで表されます。
フォーク フック g g g g / \ / \ / \ / \ f h f h y h x h | | / \ / \ | | y y x y x y y y
たとえば、5(+*-)3は、(5+3)*(5-3)となります。
上記は、ディクショナリーのセクションII Fに書かれています。以下の例は統計で使われる関数に関係します。
mean=: +/%# NB.平均(mean) norm=: ] - +/ % # NB.平均からの乖離 sqcm=: 2: ^~ ] - +/ % # NB.平均からの乖離の二乗 var =: [: mean 2: ^~ ] - mean=: +/%# NB.分散 stdv=: 2:%:[:mean 2: ^~ ] - mean=: +/%# NB.標準偏差 ,.&.>@(];mean;norm;sqcm;var;stdv) y=: 2 3 4 5 +-+---+----+----+----+-------+ |2|3.5|_1.5|2.25|1.25|1.11803| |3| |_0.5|0.25| | | |4| | 0.5|0.25| | | |5| | 1.5|2.25| | | +-+---+----+----+----+-------+