※間違いがありそう。あればコメントください。
kxwiki - Adverbs
・adverb
function or verb を引数にとって、別の function or verb を作り出す。
each以外はスペースを空けてはならない。
adverbの引数はadverbの前にあるfunction or verbなので、adverbの後ろはfunction or verbの引数。
つまり、f each args の場合、eachの引数はfで、argsはfの引数になる。
個人的によく使いそうなもの
[eachなど] each each - ' each both - \: each left - /: each right - [関数fに作用] f each X - fは1つ以上の引数をとる関数。 fからXのそれぞれに作用する関数を作り出す。 イメージ f[X[0]], f[X[1]],... X f' Y - fは2つ以上の引数をとる関数。 fからXとYの両方にそれぞれ作用する関数を作り出す。 イメージ f[X[0];Y[0]], f[X[1];Y[1]],... X f\: Y - fは2つ以上の引数をとる関数。 fからXのぞれぞれをYに作用させる関数を作り出す。 イメージ f[X[0];Y], f[X[1];Y],... X f/: Y - fは2つ以上の引数をとる関数。 fからYのぞれぞれをXに作用させる関数を作り出す。 イメージ f[X;Y[0]], f[X;Y[0]],... [実行例] q)f:{sum x,y} q)X: 1 2 3 q)Y: 10 20 30 q)f each X {sum x,y}'[1 2 3] q) q)(f each X) Y 11 22 33 q)X f' Y 11 22 33 q)X f\: Y 61 62 63 q)X f/: Y 16 26 36 q)X f/:\: Y / "X (f/:)\: Y "と同じ, (f/:)を関数と見ればよい 11 21 31 12 22 32 13 23 33 [書き方] f'[X;Y], f\:[X;Y], f/:[X;Y] とも書ける q)parse "X f' Y" / parseすれば同じに見える (';`f) `X `Y q)parse "f'[X;Y]" / parseすれば同じに見える (';`f) `X `Y
・eachを使った関数の応用
TBW, maybe...
0 件のコメント:
コメントを投稿