diff options
| author | Marshall Lochbaum <mwlochbaum@gmail.com> | 2021-08-07 20:57:51 -0400 |
|---|---|---|
| committer | Marshall Lochbaum <mwlochbaum@gmail.com> | 2021-08-07 20:57:51 -0400 |
| commit | c7ef3aabb54791b597d4095011ff048c2a13f6ac (patch) | |
| tree | 45967d042b204df64097a57cf6c72c4b4be8d1f6 /doc/couple.md | |
| parent | 7bf2aa4054b8378a76dff63acdccbcdad91f68e6 (diff) | |
Document use of fill elements for merge of empty
Diffstat (limited to 'doc/couple.md')
| -rw-r--r-- | doc/couple.md | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/doc/couple.md b/doc/couple.md index 4603b22b..95806d8f 100644 --- a/doc/couple.md +++ b/doc/couple.md @@ -30,7 +30,7 @@ In all cases what these functions do is more like reinterpreting existing data t ⥊ ⥊¨ a ∾ ⥊ ⥊¨ a -The way this happens, and the constraint that all inner arrays have the same shape, is closely connected to the concept of an array, and like [Table](map.md#table) `⌜`, Merge might be considered a fundamental way to build up multidimensional arrays from lists. In both cases rank-0 or [unit](enclose.md#whats-a-unit) arrays are somewhat special. They are the [identity value](fold.md#identity-values) of a function with Table, and can be produced by Merge [inverse](undo.md), `>⁼` **on a list**, which forces either the outer or inner shape to be empty (BQN chooses `>⁼` to be `<`, but only on an array, as `>` cannot produce non-arrays). Merge has another catch as well: it cannot produce arrays with a `0` in the shape, except at the end, unless fills can be specified. +The way this happens, and the constraint that all inner arrays have the same shape, is closely connected to the concept of an array, and like [Table](map.md#table) `⌜`, Merge might be considered a fundamental way to build up multidimensional arrays from lists. In both cases rank-0 or [unit](enclose.md#whats-a-unit) arrays are somewhat special. They are the [identity value](fold.md#identity-values) of a function with Table, and can be produced by Merge [inverse](undo.md), `>⁼` **on a list**, which forces either the outer or inner shape to be empty (BQN chooses `>⁼` to be `<`, but only on an array, as `>` cannot produce non-arrays). Merge has another catch as well: it cannot produce arrays with a `0` in the shape, except at the end, without relying on a [fill](fill.md) element. ⊢ e ← ⟨⟩¨ ↕3 ≢ > e |
