アサイン・テイラー

J言語ボキャブラリーのt.(ティードット)のm t.(アサイン・テイラーテイラー数列を代入する)のところ翻訳を試みます。

関数 h=: u`v t. は、関数としてはuと同等の作用であるが、h t. によって生成される動詞は v である。下記の例でのexpのように、明示的な定義ではテイラー数列がない場合でもテイラー数列をアサインできる。

   y=: i. 5   NB.0 1 2 3 4
   ^y    NB.オイラー数(自然対数の底)のy乗
1 2.71828 7.38906 20.0855 54.5982
   ^ t. y   NB.テイラー近似
1 1 0.5 0.1666667 0.04166667
   exp=: 3 : '^ y'   NB.このyは右側引数
   exp y   NB.関数^(キャレット、指数)と同じ働きをする
1 2.71828 7.38906 20.0855 54.5982
   exp t. y   NB.ところがテイラー近似に対応しない
domain error
exp t.y
e=: exp`(%@!) t. NB.テイラー近似に対応させる e y 1 2.71828 7.38906 20.0855 54.5982 e t. y 1 1 0.5 0.1666667 0.04166667 %@e t. y 1 _1 0.5 _0.1666667 0.04166667 %@^ t. y 1 _1 0.5 _0.1666667 0.04166667

最後の2例がわからなかったので実験継続。

   *:@e  t. y
1 2 2 1.33333 0.666667
   *:@^  t. y
1 2 2 1.33333 0.666667

作られた関数を使って作られた関数にもテイラー数列が継承されるということらしい。