0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

データの流れ ― J 言語入門

Posted at

J 言語のプログラムでは、基本的にデータは右から左へ流れます。

monad は引数が右側に一つなので、右から左へデータを流すのは明らかですね。

一方 dyad は左右に引数がありますが、左の引数と右の引数は役割が異なることがあります 1

  • 右の引数は、monad の場合と同様に操作の対象のデータを表します。
  • 左の引数は、verb の処理のパラメータを表します。

要するに右が主、左が従だということです。

例えば、{ (dyad) は配列から値を取り出す操作なので、右に配列を、左にインデックスを渡します。それに対して i. (dyad) は対象の値に一致する要素のインデックスを返すので、右に値を、左に配列を渡します。

逆に言えば、左右の引数が何を要求しているかによって、その verb が何に着目した処理なのかを (ある程度) 知ることができます。

J 言語に慣れてきたら、こういった視点で見てみるのも面白いかもしれません。


[ 目次 ]

  1. 必ずしも全ての verb に当てはまるわけではありません。+ などは左右の引数の意味に差がありません。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?