Skip to content

Commit

Permalink
Fresh build
Browse files Browse the repository at this point in the history
  • Loading branch information
xpqz committed Aug 12, 2021
1 parent d7be5e9 commit 45cd68f
Show file tree
Hide file tree
Showing 8 changed files with 204 additions and 7 deletions.
Binary file modified contents/_build/.doctrees/environment.pickle
Binary file not shown.
Binary file modified contents/_build/.doctrees/rank.doctree
Binary file not shown.
Binary file modified contents/_build/.jupyter_cache/global.db
Binary file not shown.
83 changes: 81 additions & 2 deletions contents/_build/html/_sources/rank.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -964,7 +964,7 @@
"source": [
"## Atop\n",
"\n",
"As we mentioned above, from version 18 of Dyalog, `⍤` can also be _Atop_ if given a right operand function instead of array. We'll see more of different kinds of _Atop_ later, but for now it's a functional composition rule, stating that (for the dyadic case),\n",
"As we mentioned above, from version 18 of Dyalog, `⍤` can also be _Atop_ if given a right operand function instead of array. We'll see more of different kinds of _Atop_ later in the [tacit](./tacit.ipynb) chapter, but for now it's a functional composition rule, stating that (for the dyadic case),\n",
"```apl\n",
"X f⍤g Y → f X g Y\n",
"```\n",
Expand All @@ -977,7 +977,86 @@
"X f⍤g Y → f X g Y\n",
"```\n",
"\n",
"As the monadic _Atop_ is equivalent for `∘` and `⍤`, it's worth using `⍤` for both monadic and dyadic atops for consistency."
"Another way to think about it is that in the dyadic case, the difference between `∘` and `⍤` is which operand function (`f` or `g`) gets the left argument. In the monadic case, _Atop_ is equivalent for `∘` and `⍤`, so it's worth using `⍤` for both monadic and dyadic atops for consistency. \n",
"\n",
"Here is a simple example of a dyadic _Atop_,"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<span style=\"white-space:pre; font-family: monospace\">¯5 ¯7 ¯9\n",
"</span>"
]
},
"execution_count": 1,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"1 2 3 -⍤+ 4 5 6 ⍝ Negate the sum of two vectors"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"which, following the `X f⍤g Y → f X g Y` rule, is the same as"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<span style=\"white-space:pre; font-family: monospace\">¯5 ¯7 ¯9\n",
"</span>"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"-1 2 3+4 5 6 ⍝ Negate the sum of two vectors"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"or, as a tacit formulation (which we'll cover in more detail later),"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<span style=\"white-space:pre; font-family: monospace\">¯5 ¯7 ¯9\n",
"</span>"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"1 2 3 (-+) 4 5 6 ⍝ Negate the sum of two vectors"
]
},
{
Expand Down
37 changes: 35 additions & 2 deletions contents/_build/html/rank.html
Original file line number Diff line number Diff line change
Expand Up @@ -842,7 +842,7 @@ <h2>Rank drills<a class="headerlink" href="#rank-drills" title="Permalink to thi
</div>
<div class="section" id="atop">
<h2>Atop<a class="headerlink" href="#atop" title="Permalink to this headline"></a></h2>
<p>As we mentioned above, from version 18 of Dyalog, <code class="docutils literal notranslate"><span class="pre"></span></code> can also be <em>Atop</em> if given a right operand function instead of array. We’ll see more of different kinds of <em>Atop</em> later, but for now it’s a functional composition rule, stating that (for the dyadic case),</p>
<p>As we mentioned above, from version 18 of Dyalog, <code class="docutils literal notranslate"><span class="pre"></span></code> can also be <em>Atop</em> if given a right operand function instead of array. We’ll see more of different kinds of <em>Atop</em> later in the <a class="reference internal" href="tacit.html"><span class="doc std std-doc">tacit</span></a> chapter, but for now it’s a functional composition rule, stating that (for the dyadic case),</p>
<div class="highlight-apl notranslate"><div class="highlight"><pre><span></span><span class="nv">X</span> <span class="nv">f</span><span class="na"></span><span class="nv">g</span> <span class="nv">Y</span> <span class="kd"></span> <span class="nv">f</span> <span class="nv">X</span> <span class="nv">g</span> <span class="nv">Y</span>
</pre></div>
</div>
Expand All @@ -853,7 +853,40 @@ <h2>Atop<a class="headerlink" href="#atop" title="Permalink to this headline">¶
<span class="nv">X</span> <span class="nv">f</span><span class="na"></span><span class="nv">g</span> <span class="nv">Y</span> <span class="kd"></span> <span class="nv">f</span> <span class="nv">X</span> <span class="nv">g</span> <span class="nv">Y</span>
</pre></div>
</div>
<p>As the monadic <em>Atop</em> is equivalent for <code class="docutils literal notranslate"><span class="pre"></span></code> and <code class="docutils literal notranslate"><span class="pre"></span></code>, it’s worth using <code class="docutils literal notranslate"><span class="pre"></span></code> for both monadic and dyadic atops for consistency.</p>
<p>Another way to think about it is that in the dyadic case, the difference between <code class="docutils literal notranslate"><span class="pre"></span></code> and <code class="docutils literal notranslate"><span class="pre"></span></code> is which operand function (<code class="docutils literal notranslate"><span class="pre">f</span></code> or <code class="docutils literal notranslate"><span class="pre">g</span></code>) gets the left argument. In the monadic case, <em>Atop</em> is equivalent for <code class="docutils literal notranslate"><span class="pre"></span></code> and <code class="docutils literal notranslate"><span class="pre"></span></code>, so it’s worth using <code class="docutils literal notranslate"><span class="pre"></span></code> for both monadic and dyadic atops for consistency.</p>
<p>Here is a simple example of a dyadic <em>Atop</em>,</p>
<div class="cell docutils container">
<div class="cell_input docutils container">
<div class="highlight-APL notranslate"><div class="highlight"><pre><span></span><span class="m">1</span> <span class="m">2</span> <span class="m">3</span> <span class="o">-</span><span class="na"></span><span class="o">+</span> <span class="m">4</span> <span class="m">5</span> <span class="m">6</span> <span class="c1">⍝ Negate the sum of two vectors</span>
</pre></div>
</div>
</div>
<div class="cell_output docutils container">
<div class="output text_html"><span style="white-space:pre; font-family: monospace">¯5 ¯7 ¯9
</span></div></div>
</div>
<p>which, following the <code class="docutils literal notranslate"><span class="pre">X</span> <span class="pre">f⍤g</span> <span class="pre">Y</span> <span class="pre"></span> <span class="pre">f</span> <span class="pre">X</span> <span class="pre">g</span> <span class="pre">Y</span></code> rule, is the same as</p>
<div class="cell docutils container">
<div class="cell_input docutils container">
<div class="highlight-APL notranslate"><div class="highlight"><pre><span></span><span class="o">-</span><span class="m">1</span> <span class="m">2</span> <span class="m">3</span><span class="o">+</span><span class="m">4</span> <span class="m">5</span> <span class="m">6</span> <span class="c1">⍝ Negate the sum of two vectors</span>
</pre></div>
</div>
</div>
<div class="cell_output docutils container">
<div class="output text_html"><span style="white-space:pre; font-family: monospace">¯5 ¯7 ¯9
</span></div></div>
</div>
<p>or, as a tacit formulation (which we’ll cover in more detail later),</p>
<div class="cell docutils container">
<div class="cell_input docutils container">
<div class="highlight-APL notranslate"><div class="highlight"><pre><span></span><span class="m">1</span> <span class="m">2</span> <span class="m">3</span> <span class="p">(</span><span class="o">-+</span><span class="p">)</span> <span class="m">4</span> <span class="m">5</span> <span class="m">6</span> <span class="c1">⍝ Negate the sum of two vectors</span>
</pre></div>
</div>
</div>
<div class="cell_output docutils container">
<div class="output text_html"><span style="white-space:pre; font-family: monospace">¯5 ¯7 ¯9
</span></div></div>
</div>
</div>
</div>

Expand Down
2 changes: 1 addition & 1 deletion contents/_build/html/searchindex.js

Large diffs are not rendered by default.

6 changes: 6 additions & 0 deletions contents/_build/jupyter_execute/rank.apl
Original file line number Diff line number Diff line change
Expand Up @@ -63,4 +63,10 @@ A/⍤1⊢B
]DISPLAY 2t
]DISPLAY 1t

1 2 3 -+ 4 5 6 Negate the sum of two vectors

-1 2 3+4 5 6 Negate the sum of two vectors

1 2 3 (-+) 4 5 6 Negate the sum of two vectors


83 changes: 81 additions & 2 deletions contents/_build/jupyter_execute/rank.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -970,7 +970,7 @@
"source": [
"## Atop\n",
"\n",
"As we mentioned above, from version 18 of Dyalog, `⍤` can also be _Atop_ if given a right operand function instead of array. We'll see more of different kinds of _Atop_ later, but for now it's a functional composition rule, stating that (for the dyadic case),\n",
"As we mentioned above, from version 18 of Dyalog, `⍤` can also be _Atop_ if given a right operand function instead of array. We'll see more of different kinds of _Atop_ later in the [tacit](./tacit.ipynb) chapter, but for now it's a functional composition rule, stating that (for the dyadic case),\n",
"```apl\n",
"X f⍤g Y → f X g Y\n",
"```\n",
Expand All @@ -983,7 +983,86 @@
"X f⍤g Y → f X g Y\n",
"```\n",
"\n",
"As the monadic _Atop_ is equivalent for `∘` and `⍤`, it's worth using `⍤` for both monadic and dyadic atops for consistency."
"Another way to think about it is that in the dyadic case, the difference between `∘` and `⍤` is which operand function (`f` or `g`) gets the left argument. In the monadic case, _Atop_ is equivalent for `∘` and `⍤`, so it's worth using `⍤` for both monadic and dyadic atops for consistency. \n",
"\n",
"Here is a simple example of a dyadic _Atop_,"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<span style=\"white-space:pre; font-family: monospace\">¯5 ¯7 ¯9\n",
"</span>"
]
},
"execution_count": 25,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"1 2 3 -⍤+ 4 5 6 ⍝ Negate the sum of two vectors"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"which, following the `X f⍤g Y → f X g Y` rule, is the same as"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<span style=\"white-space:pre; font-family: monospace\">¯5 ¯7 ¯9\n",
"</span>"
]
},
"execution_count": 26,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"-1 2 3+4 5 6 ⍝ Negate the sum of two vectors"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"or, as a tacit formulation (which we'll cover in more detail later),"
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<span style=\"white-space:pre; font-family: monospace\">¯5 ¯7 ¯9\n",
"</span>"
]
},
"execution_count": 27,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"1 2 3 (-+) 4 5 6 ⍝ Negate the sum of two vectors"
]
},
{
Expand Down

0 comments on commit 45cd68f

Please sign in to comment.