aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarshall Lochbaum <mwlochbaum@gmail.com>2022-09-15 15:02:48 -0400
committerMarshall Lochbaum <mwlochbaum@gmail.com>2022-09-15 15:02:48 -0400
commit57194701f21dac645e2b3f820008de6c235f83cb (patch)
tree3eda4c56d113483bc084e38a90e994fdc38f7421
parent36be2475cb988fdd831b3842175491d57abf9c26 (diff)
Keep correcting
-rw-r--r--doc/fromDyalog.md9
-rw-r--r--docs/doc/fromDyalog.html15
2 files changed, 15 insertions, 9 deletions
diff --git a/doc/fromDyalog.md b/doc/fromDyalog.md
index 5b7b1c1f..953af3cf 100644
--- a/doc/fromDyalog.md
+++ b/doc/fromDyalog.md
@@ -54,7 +54,7 @@ BQN uses the ligature character `‿` for stranding, instead of plain juxtaposit
## For reading
-Glyphs `+-×÷⌊⌈|⊣⊢⌽⍉` have nearly the same meaning in BQN as APL. Closest equivalents in Dyalog APL for the other functions are below (except `!`, Assert).
+Glyphs `+-×÷⌊⌈|⊣⊢⍉` have nearly the same meaning in BQN as APL. The other primitive functions (except `!`, Assert) are translated loosely to Dyalog APL below.
| BQN | Monad | Dyad
|-----|---------------|-----
@@ -77,6 +77,7 @@ Glyphs `+-×÷⌊⌈|⊣⊢⌽⍉` have nearly the same meaning in BQN as APL. C
| `↕` | `⍳` | `,⌿`
| `»` | ` ≢↑(¯1-≢)↑⊢` | ` ≢⍤⊢↑⍪`
| `«` | `-⍤≢↑(1+≢)↑⊢` | `-⍤≢⍤⊢↑⍪⍨`
+| `⌽` | `⊖` | `⊖`
| `/` | `⍸` | `⌿`
| `⍋` | `⍋` | `⍸`
| `⍒` | `⍒` | `⍸`, reversed order
@@ -86,7 +87,7 @@ Glyphs `+-×÷⌊⌈|⊣⊢⌽⍉` have nearly the same meaning in BQN as APL. C
| `⊒` | `+⌿∘.≡⍨∧∘.<⍨∘(⍳≢)` | `{R←≢⍤⊢⍴∘⍋∘⍋⍺⍳⍪⍨⋄⍺(R⍨⍳R)⍵}`
| `∊` | `≠` | `∊`
| `⍷` | `∪` | `⍷`
-| `⊔` | `⌸` | `⌸` or `⊆`
+| `⊔` | `{⊂⍵}⌸` | `{⊂⍵}⌸` or `⊆`
Modifiers are a little harder. Many have equivalents in some cases, but Dyalog sometimes chooses different functionality based on whether the operand is an array. In BQN an array is always treated as a constant function.
@@ -133,8 +134,8 @@ The form `F⍣G` (Power with a function right operand; Power limit) must be impl
<tr><td> <code>∪</code> </td><td> <code>⍷</code> </td><td> <code>⊣∾∊˜¬⊸/⊢</code></td> </tr>
<tr><td> <code>⍳</code> </td><td> <code>↕</code> </td><td> <code>⊐</code></td> </tr>
<tr><td> <code>⍸</code> </td><td> <code>/</code> </td><td> <code>⍋</code></td> </tr>
-<tr><td> <code>⍋</code> </td><td> <code>⍋</code> </td><td> Give up </td> </tr>
-<tr><td> <code>⍒</code> </td><td> <code>⍒</code> </td><td> Give up </td> </tr>
+<tr><td> <code>⍋</code> </td><td> <code>⍋</code> </td><td> <code>⍋⊐</code></td> </tr>
+<tr><td> <code>⍒</code> </td><td> <code>⍒</code> </td><td> <code>⍒⊐</code></td> </tr>
<tr><td> <code>≢</code> </td><td> <code>≠</code> </td><td> <code>≢</code></td> </tr>
<tr><td> <code>⍎</code> </td><td colspan=2><code>•BQN</code></td> </tr>
<tr><td> <code>⍕</code> </td><td colspan=2><code>•Fmt</code></td> </tr>
diff --git a/docs/doc/fromDyalog.html b/docs/doc/fromDyalog.html
index 734ceafc..c40ce402 100644
--- a/docs/doc/fromDyalog.html
+++ b/docs/doc/fromDyalog.html
@@ -109,7 +109,7 @@
<p>The assignment arrow <code><span class='Gets'>←</span></code> defines a new variable in a block, while <code><span class='Gets'>↩</span></code> modifies an existing one.</p>
<p>BQN uses the ligature character <code><span class='Ligature'>‿</span></code> for stranding, instead of plain juxtaposition. It also has a <a href="arrayrepr.html#brackets">list notation</a> using <code><span class='Bracket'>⟨⟩</span></code>, and <code><span class='Bracket'>[]</span></code> for higher-rank arrays.</p>
<h2 id="for-reading"><a class="header" href="#for-reading">For reading</a></h2>
-<p>Glyphs <code><span class='Function'>+-×÷⌊⌈|⊣⊢⌽⍉</span></code> have nearly the same meaning in BQN as APL. Closest equivalents in Dyalog APL for the other functions are below (except <code><span class='Function'>!</span></code>, Assert).</p>
+<p>Glyphs <code><span class='Function'>+-×÷⌊⌈|⊣⊢⍉</span></code> have nearly the same meaning in BQN as APL. The other primitive functions (except <code><span class='Function'>!</span></code>, Assert) are translated loosely to Dyalog APL below.</p>
<table>
<thead>
<tr>
@@ -215,6 +215,11 @@
<td><code><span class='Function'>-</span><span class='Value'>⍤</span><span class='Function'>≢</span><span class='Value'>⍤</span><span class='Function'>⊢↑</span><span class='Value'>⍪⍨</span></code></td>
</tr>
<tr>
+<td><code><span class='Function'>⌽</span></code></td>
+<td><code><span class='Value'>⊖</span></code></td>
+<td><code><span class='Value'>⊖</span></code></td>
+</tr>
+<tr>
<td><code><span class='Function'>/</span></code></td>
<td><code><span class='Value'>⍸</span></code></td>
<td><code><span class='Value'>⌿</span></code></td>
@@ -261,8 +266,8 @@
</tr>
<tr>
<td><code><span class='Function'>⊔</span></code></td>
-<td><code><span class='Value'>⌸</span></code></td>
-<td><code><span class='Value'>⌸</span></code> or <code><span class='Value'>⊆</span></code></td>
+<td><code><span class='Brace'>{</span><span class='Value'>⊂⍵</span><span class='Brace'>}</span><span class='Value'>⌸</span></code></td>
+<td><code><span class='Brace'>{</span><span class='Value'>⊂⍵</span><span class='Brace'>}</span><span class='Value'>⌸</span></code> or <code><span class='Value'>⊆</span></code></td>
</tr>
</tbody>
</table>
@@ -348,8 +353,8 @@
<tr><td> <code><span class='Value'>∪</span></code> </td><td> <code><span class='Function'>⍷</span></code> </td><td> <code><span class='Function'>⊣∾∊</span><span class='Modifier'>˜</span><span class='Function'>¬</span><span class='Modifier2'>⊸</span><span class='Function'>/⊢</span></code></td> </tr>
<tr><td> <code><span class='Value'>⍳</span></code> </td><td> <code><span class='Function'>↕</span></code> </td><td> <code><span class='Function'>⊐</span></code></td> </tr>
<tr><td> <code><span class='Value'>⍸</span></code> </td><td> <code><span class='Function'>/</span></code> </td><td> <code><span class='Function'>⍋</span></code></td> </tr>
-<tr><td> <code><span class='Function'>⍋</span></code> </td><td> <code><span class='Function'>⍋</span></code> </td><td> Give up </td> </tr>
-<tr><td> <code><span class='Function'>⍒</span></code> </td><td> <code><span class='Function'>⍒</span></code> </td><td> Give up </td> </tr>
+<tr><td> <code><span class='Function'>⍋</span></code> </td><td> <code><span class='Function'>⍋</span></code> </td><td> <code><span class='Function'>⍋⊐</span></code></td> </tr>
+<tr><td> <code><span class='Function'>⍒</span></code> </td><td> <code><span class='Function'>⍒</span></code> </td><td> <code><span class='Function'>⍒⊐</span></code></td> </tr>
<tr><td> <code><span class='Function'>≢</span></code> </td><td> <code><span class='Function'>≠</span></code> </td><td> <code><span class='Function'>≢</span></code></td> </tr>
<tr><td> <code><span class='Value'>⍎</span></code> </td><td colspan=2><code><span class='Function'>•BQN</span></code></td> </tr>
<tr><td> <code><span class='Value'>⍕</span></code> </td><td colspan=2><code><span class='Function'>•Fmt</span></code></td> </tr>