Link

, or  in J, is a dyadic primitive function which builds a nested vector out of the two arguments. Link is useful for building a nested array when stranding by juxtaposition is not available. Link first appeared as an extension to SHARP APL.

Examples
Link implements, that is, the concatenation of enclose of the left argument and nest (enclose if simple) of the right argument. This allows to chain the function over multiple arrays to form a nested array. Note that both SHARP APL and J use flat array model, so they allow boxing of a simple scalar.

Because of the function's asymmetric nature, oddities may appear if the arrays are chained in a wrong order:

Similarly, the chaining fails if the rightmost array is already nested:

What we really wanted was:

Link is different from Pair, as Pair simply encloses both arguments and always produces a length-2 vector, so it cannot be used to construct a long nested array of uniform depth like Link does.

Documentation

 * J Dictionary, NuVoc