about summary refs log tree commit diff stats
path: root/html/edit/009-sandbox-test.mu.html
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2017-06-25 10:49:03 -0700
committerKartik K. Agaram <vc@akkartik.com>2017-06-25 11:02:15 -0700
commitdc5f112c3ea8aff1a389513fa6c33d88fab07420 (patch)
tree5e887029c973d8a5b292fd9993c5ad81cf8c4c61 /html/edit/009-sandbox-test.mu.html
parentd2f0704962eb0e43f3db8b461dd6d48ee9297f73 (diff)
downloadmu-dc5f112c3ea8aff1a389513fa6c33d88fab07420.tar.gz
3958
Improvement on fix 3957: rather than put a band-aid over a slow
operation, eliminate the slowdown entirely.

In this case it turns out we're unnecessarily saving files to disk when
they could never be modified. Are we doing this on F4 as well?!
Diffstat (limited to 'html/edit/009-sandbox-test.mu.html')
-rw-r--r--html/edit/009-sandbox-test.mu.html76
1 files changed, 38 insertions, 38 deletions
diff --git a/html/edit/009-sandbox-test.mu.html b/html/edit/009-sandbox-test.mu.html
index d147fa92..f75f45f7 100644
--- a/html/edit/009-sandbox-test.mu.html
+++ b/html/edit/009-sandbox-test.mu.html
@@ -156,16 +156,16 @@ if ('onhashchange' in window) {
 <span id="L93" class="LineNr"> 93 </span>]
 <span id="L94" class="LineNr"> 94 </span>
 <span id="L95" class="LineNr"> 95 </span><span class="Comment"># include expected response when saving or restoring a sandbox</span>
-<span id="L96" class="LineNr"> 96 </span><span class="muRecipe">before</span> <span class="Constant"><a href='005-sandbox.mu.html#L239'>&lt;end-save-sandbox&gt;</a></span> [
+<span id="L96" class="LineNr"> 96 </span><span class="muRecipe">before</span> <span class="Constant"><a href='005-sandbox.mu.html#L249'>&lt;end-save-sandbox&gt;</a></span> [
 <span id="L97" class="LineNr"> 97 </span>  <span class="Delimiter">{</span>
-<span id="L98" class="LineNr"> 98 </span>  <span class="Conceal">¦</span> expected-response:text <span class="Special">&lt;-</span> get *curr, <span class="Constant">expected-response:offset</span>
+<span id="L98" class="LineNr"> 98 </span>  <span class="Conceal">¦</span> expected-response:text <span class="Special">&lt;-</span> get *sandbox, <span class="Constant">expected-response:offset</span>
 <span id="L99" class="LineNr"> 99 </span>  <span class="Conceal">¦</span> <span class="muControl">break-unless</span> expected-response
 <span id="L100" class="LineNr">100 </span>  <span class="Conceal">¦</span> filename <span class="Special">&lt;-</span> append filename, <span class="Constant">[.out]</span>
 <span id="L101" class="LineNr">101 </span>  <span class="Conceal">¦</span> <a href='../088file.mu.html#L11'>resources</a> <span class="Special">&lt;-</span> <a href='../088file.mu.html#L127'>dump</a> <a href='../088file.mu.html#L11'>resources</a>, filename, expected-response
 <span id="L102" class="LineNr">102 </span>  <span class="Delimiter">}</span>
 <span id="L103" class="LineNr">103 </span>]
 <span id="L104" class="LineNr">104 </span>
-<span id="L105" class="LineNr">105 </span><span class="muRecipe">before</span> <span class="Constant"><a href='005-sandbox.mu.html#L485'>&lt;end-restore-sandbox&gt;</a></span> [
+<span id="L105" class="LineNr">105 </span><span class="muRecipe">before</span> <span class="Constant"><a href='005-sandbox.mu.html#L491'>&lt;end-restore-sandbox&gt;</a></span> [
 <span id="L106" class="LineNr">106 </span>  <span class="Delimiter">{</span>
 <span id="L107" class="LineNr">107 </span>  <span class="Conceal">¦</span> filename <span class="Special">&lt;-</span> append filename, <span class="Constant">[.out]</span>
 <span id="L108" class="LineNr">108 </span>  <span class="Conceal">¦</span> contents <span class="Special">&lt;-</span> <a href='../088file.mu.html#L38'>slurp</a> <a href='../088file.mu.html#L11'>resources</a>, filename
@@ -189,43 +189,43 @@ if ('onhashchange' in window) {
 <span id="L126" class="LineNr">126 </span>  <span class="Conceal">¦</span> below-sandbox-editor?:bool <span class="Special">&lt;-</span> greater-or-equal click-row, first-sandbox-begins
 <span id="L127" class="LineNr">127 </span>  <span class="Conceal">¦</span> <span class="muControl">break-unless</span> below-sandbox-editor?
 <span id="L128" class="LineNr">128 </span>  <span class="Conceal">¦</span> <span class="Comment"># identify the sandbox whose output is being clicked on</span>
-<span id="L129" class="LineNr">129 </span>  <span class="Conceal">¦</span> sandbox:&amp;:sandbox <span class="Special">&lt;-</span> <a href='009-sandbox-test.mu.html#L142'>find-click-in-sandbox-output</a> env, click-row
+<span id="L129" class="LineNr">129 </span>  <span class="Conceal">¦</span> sandbox:&amp;:sandbox, sandbox-index:num <span class="Special">&lt;-</span> <a href='009-sandbox-test.mu.html#L140'>find-click-in-sandbox-output</a> env, click-row
 <span id="L130" class="LineNr">130 </span>  <span class="Conceal">¦</span> <span class="muControl">break-unless</span> sandbox
-<span id="L131" class="LineNr">131 </span>  <span class="Conceal">¦</span> <a href='../081print.mu.html#L16'>screen</a> <span class="Special">&lt;-</span> <a href='005-sandbox.mu.html#L219'>update-status</a> <a href='../081print.mu.html#L16'>screen</a>, <span class="Constant">[updating...      ]</span>, <span class="Constant">245/grey</span>
-<span id="L132" class="LineNr">132 </span>  <span class="Conceal">¦</span> <span class="Comment"># toggle its expected-response, and save session</span>
-<span id="L133" class="LineNr">133 </span>  <span class="Conceal">¦</span> sandbox <span class="Special">&lt;-</span> <a href='009-sandbox-test.mu.html#L168'>toggle-expected-response</a> sandbox
-<span id="L134" class="LineNr">134 </span>  <span class="Conceal">¦</span> <a href='005-sandbox.mu.html#L226'>save-sandboxes</a> env, <a href='../088file.mu.html#L11'>resources</a>
-<span id="L135" class="LineNr">135 </span>  <span class="Conceal">¦</span> <a href='../081print.mu.html#L16'>screen</a> <span class="Special">&lt;-</span> render-sandbox-side <a href='../081print.mu.html#L16'>screen</a>, env, <a href='001-editor.mu.html#L107'>render</a>
-<span id="L136" class="LineNr">136 </span>  <span class="Conceal">¦</span> <a href='../081print.mu.html#L16'>screen</a> <span class="Special">&lt;-</span> <a href='005-sandbox.mu.html#L219'>update-status</a> <a href='../081print.mu.html#L16'>screen</a>, <span class="Constant">[                 ]</span>, <span class="Constant">245/grey</span>
-<span id="L137" class="LineNr">137 </span>  <span class="Conceal">¦</span> <a href='../081print.mu.html#L16'>screen</a> <span class="Special">&lt;-</span> <a href='004-programming-environment.mu.html#L472'>update-cursor</a> <a href='../081print.mu.html#L16'>screen</a>, recipes, current-sandbox, sandbox-in-focus?, env
-<span id="L138" class="LineNr">138 </span>  <span class="Conceal">¦</span> <span class="muControl">loop</span> <span class="Constant">+next-event</span>
-<span id="L139" class="LineNr">139 </span>  <span class="Delimiter">}</span>
-<span id="L140" class="LineNr">140 </span>]
-<span id="L141" class="LineNr">141 </span>
-<span id="L142" class="LineNr">142 </span><span class="muRecipe">def</span> <a href='009-sandbox-test.mu.html#L142'>find-click-in-sandbox-output</a> env:&amp;:environment, click-row:num<span class="muRecipe"> -&gt; </span>sandbox:&amp;:sandbox [
-<span id="L143" class="LineNr">143 </span>  <span class="Constant">local-scope</span>
-<span id="L144" class="LineNr">144 </span>  <span class="Constant">load-ingredients</span>
-<span id="L145" class="LineNr">145 </span>  <span class="Comment"># assert click-row &gt;= sandbox.starting-row-on-screen</span>
-<span id="L146" class="LineNr">146 </span>  sandbox:&amp;:sandbox <span class="Special">&lt;-</span> get *env, <span class="Constant">sandbox:offset</span>
-<span id="L147" class="LineNr">147 </span>  start:num <span class="Special">&lt;-</span> get *sandbox, <span class="Constant">starting-row-on-screen:offset</span>
-<span id="L148" class="LineNr">148 </span>  clicked-on-sandboxes?:bool <span class="Special">&lt;-</span> greater-or-equal click-row, start
-<span id="L149" class="LineNr">149 </span>  assert clicked-on-sandboxes?, <span class="Constant">[extract-sandbox called on click to sandbox editor]</span>
-<span id="L150" class="LineNr">150 </span>  <span class="Comment"># while click-row &lt; sandbox.next-sandbox.starting-row-on-screen</span>
-<span id="L151" class="LineNr">151 </span>  <span class="Delimiter">{</span>
-<span id="L152" class="LineNr">152 </span>  <span class="Conceal">¦</span> next-sandbox:&amp;:sandbox <span class="Special">&lt;-</span> get *sandbox, <span class="Constant">next-sandbox:offset</span>
-<span id="L153" class="LineNr">153 </span>  <span class="Conceal">¦</span> <span class="muControl">break-unless</span> next-sandbox
-<span id="L154" class="LineNr">154 </span>  <span class="Conceal">¦</span> next-start:num <span class="Special">&lt;-</span> get *next-sandbox, <span class="Constant">starting-row-on-screen:offset</span>
-<span id="L155" class="LineNr">155 </span>  <span class="Conceal">¦</span> found?:bool <span class="Special">&lt;-</span> lesser-than click-row, next-start
-<span id="L156" class="LineNr">156 </span>  <span class="Conceal">¦</span> <span class="muControl">break-if</span> found?
-<span id="L157" class="LineNr">157 </span>  <span class="Conceal">¦</span> sandbox <span class="Special">&lt;-</span> copy next-sandbox
+<span id="L131" class="LineNr">131 </span>  <span class="Conceal">¦</span> <span class="Comment"># toggle its expected-response, and save session</span>
+<span id="L132" class="LineNr">132 </span>  <span class="Conceal">¦</span> sandbox <span class="Special">&lt;-</span> <a href='009-sandbox-test.mu.html#L168'>toggle-expected-response</a> sandbox
+<span id="L133" class="LineNr">133 </span>  <span class="Conceal">¦</span> <a href='005-sandbox.mu.html#L243'>save-sandbox</a> <a href='../088file.mu.html#L11'>resources</a>, sandbox, sandbox-index
+<span id="L134" class="LineNr">134 </span>  <span class="Conceal">¦</span> <a href='../081print.mu.html#L16'>screen</a> <span class="Special">&lt;-</span> render-sandbox-side <a href='../081print.mu.html#L16'>screen</a>, env, <a href='001-editor.mu.html#L107'>render</a>
+<span id="L135" class="LineNr">135 </span>  <span class="Conceal">¦</span> <a href='../081print.mu.html#L16'>screen</a> <span class="Special">&lt;-</span> <a href='004-programming-environment.mu.html#L472'>update-cursor</a> <a href='../081print.mu.html#L16'>screen</a>, recipes, current-sandbox, sandbox-in-focus?, env
+<span id="L136" class="LineNr">136 </span>  <span class="Conceal">¦</span> <span class="muControl">loop</span> <span class="Constant">+next-event</span>
+<span id="L137" class="LineNr">137 </span>  <span class="Delimiter">}</span>
+<span id="L138" class="LineNr">138 </span>]
+<span id="L139" class="LineNr">139 </span>
+<span id="L140" class="LineNr">140 </span><span class="muRecipe">def</span> <a href='009-sandbox-test.mu.html#L140'>find-click-in-sandbox-output</a> env:&amp;:environment, click-row:num<span class="muRecipe"> -&gt; </span>sandbox:&amp;:sandbox, sandbox-index:num [
+<span id="L141" class="LineNr">141 </span>  <span class="Constant">local-scope</span>
+<span id="L142" class="LineNr">142 </span>  <span class="Constant">load-ingredients</span>
+<span id="L143" class="LineNr">143 </span>  <span class="Comment"># assert click-row &gt;= sandbox.starting-row-on-screen</span>
+<span id="L144" class="LineNr">144 </span>  sandbox:&amp;:sandbox <span class="Special">&lt;-</span> get *env, <span class="Constant">sandbox:offset</span>
+<span id="L145" class="LineNr">145 </span>  start:num <span class="Special">&lt;-</span> get *sandbox, <span class="Constant">starting-row-on-screen:offset</span>
+<span id="L146" class="LineNr">146 </span>  clicked-on-sandboxes?:bool <span class="Special">&lt;-</span> greater-or-equal click-row, start
+<span id="L147" class="LineNr">147 </span>  assert clicked-on-sandboxes?, <span class="Constant">[extract-sandbox called on click to sandbox editor]</span>
+<span id="L148" class="LineNr">148 </span>  <span class="Comment"># while click-row &lt; sandbox.next-sandbox.starting-row-on-screen</span>
+<span id="L149" class="LineNr">149 </span>  sandbox-index <span class="Special">&lt;-</span> copy<span class="Constant"> 0</span>
+<span id="L150" class="LineNr">150 </span>  <span class="Delimiter">{</span>
+<span id="L151" class="LineNr">151 </span>  <span class="Conceal">¦</span> next-sandbox:&amp;:sandbox <span class="Special">&lt;-</span> get *sandbox, <span class="Constant">next-sandbox:offset</span>
+<span id="L152" class="LineNr">152 </span>  <span class="Conceal">¦</span> <span class="muControl">break-unless</span> next-sandbox
+<span id="L153" class="LineNr">153 </span>  <span class="Conceal">¦</span> next-start:num <span class="Special">&lt;-</span> get *next-sandbox, <span class="Constant">starting-row-on-screen:offset</span>
+<span id="L154" class="LineNr">154 </span>  <span class="Conceal">¦</span> found?:bool <span class="Special">&lt;-</span> lesser-than click-row, next-start
+<span id="L155" class="LineNr">155 </span>  <span class="Conceal">¦</span> <span class="muControl">break-if</span> found?
+<span id="L156" class="LineNr">156 </span>  <span class="Conceal">¦</span> sandbox <span class="Special">&lt;-</span> copy next-sandbox
+<span id="L157" class="LineNr">157 </span>  <span class="Conceal">¦</span> sandbox-index <span class="Special">&lt;-</span> add sandbox-index,<span class="Constant"> 1</span>
 <span id="L158" class="LineNr">158 </span>  <span class="Conceal">¦</span> <span class="muControl">loop</span>
 <span id="L159" class="LineNr">159 </span>  <span class="Delimiter">}</span>
 <span id="L160" class="LineNr">160 </span>  <span class="Comment"># return sandbox if click is in its output region</span>
 <span id="L161" class="LineNr">161 </span>  response-starting-row:num <span class="Special">&lt;-</span> get *sandbox, <span class="Constant">response-starting-row-on-screen:offset</span>
-<span id="L162" class="LineNr">162 </span>  <span class="muControl">return-unless</span> response-starting-row, <span class="Constant">0/no-click-in-sandbox-output</span>
+<span id="L162" class="LineNr">162 </span>  <span class="muControl">return-unless</span> response-starting-row, <span class="Constant">0/no-click-in-sandbox-output</span>, <span class="Constant">0/sandbox-index</span>
 <span id="L163" class="LineNr">163 </span>  click-in-response?:bool <span class="Special">&lt;-</span> greater-or-equal click-row, response-starting-row
-<span id="L164" class="LineNr">164 </span>  <span class="muControl">return-unless</span> click-in-response?, <span class="Constant">0/no-click-in-sandbox-output</span>
-<span id="L165" class="LineNr">165 </span>  <span class="muControl">return</span> sandbox
+<span id="L164" class="LineNr">164 </span>  <span class="muControl">return-unless</span> click-in-response?, <span class="Constant">0/no-click-in-sandbox-output</span>, <span class="Constant">0/sandbox-index</span>
+<span id="L165" class="LineNr">165 </span>  <span class="muControl">return</span> sandbox, sandbox-index
 <span id="L166" class="LineNr">166 </span>]
 <span id="L167" class="LineNr">167 </span>
 <span id="L168" class="LineNr">168 </span><span class="muRecipe">def</span> <a href='009-sandbox-test.mu.html#L168'>toggle-expected-response</a> sandbox:&amp;:sandbox<span class="muRecipe"> -&gt; </span>sandbox:&amp;:sandbox [
@@ -246,7 +246,7 @@ if ('onhashchange' in window) {
 <span id="L183" class="LineNr">183 </span>]
 <span id="L184" class="LineNr">184 </span>
 <span id="L185" class="LineNr">185 </span><span class="Comment"># when rendering a sandbox, color it in red/green if expected response exists</span>
-<span id="L186" class="LineNr">186 </span><span class="muRecipe">after</span> <span class="Constant"><a href='005-sandbox.mu.html#L306'>&lt;render-sandbox-response&gt;</a></span> [
+<span id="L186" class="LineNr">186 </span><span class="muRecipe">after</span> <span class="Constant"><a href='005-sandbox.mu.html#L312'>&lt;render-sandbox-response&gt;</a></span> [
 <span id="L187" class="LineNr">187 </span>  <span class="Delimiter">{</span>
 <span id="L188" class="LineNr">188 </span>  <span class="Conceal">¦</span> <span class="muControl">break-unless</span> sandbox-response
 <span id="L189" class="LineNr">189 </span>  <span class="Conceal">¦</span> *sandbox <span class="Special">&lt;-</span> put *sandbox, <span class="Constant">response-starting-row-on-screen:offset</span>, row
@@ -255,17 +255,17 @@ if ('onhashchange' in window) {
 <span id="L192" class="LineNr">192 </span>  <span class="Conceal">¦</span> response-is-expected?:bool <span class="Special">&lt;-</span> equal expected-response, sandbox-response
 <span id="L193" class="LineNr">193 </span>  <span class="Conceal">¦</span> <span class="Delimiter">{</span>
 <span id="L194" class="LineNr">194 </span>  <span class="Conceal">¦</span> <span class="Conceal">¦</span> <span class="muControl">break-if</span> response-is-expected?
-<span id="L195" class="LineNr">195 </span>  <span class="Conceal">¦</span> <span class="Conceal">¦</span> row, <a href='../081print.mu.html#L16'>screen</a> <span class="Special">&lt;-</span> <a href='005-sandbox.mu.html#L393'>render-text</a> <a href='../081print.mu.html#L16'>screen</a>, sandbox-response, left, right, <span class="Constant">1/red</span>, row
+<span id="L195" class="LineNr">195 </span>  <span class="Conceal">¦</span> <span class="Conceal">¦</span> row, <a href='../081print.mu.html#L16'>screen</a> <span class="Special">&lt;-</span> <a href='005-sandbox.mu.html#L399'>render-text</a> <a href='../081print.mu.html#L16'>screen</a>, sandbox-response, left, right, <span class="Constant">1/red</span>, row
 <span id="L196" class="LineNr">196 </span>  <span class="Conceal">¦</span> <span class="Delimiter">}</span>
 <span id="L197" class="LineNr">197 </span>  <span class="Conceal">¦</span> <span class="Delimiter">{</span>
 <span id="L198" class="LineNr">198 </span>  <span class="Conceal">¦</span> <span class="Conceal">¦</span> <span class="muControl">break-unless</span> response-is-expected?:bool
-<span id="L199" class="LineNr">199 </span>  <span class="Conceal">¦</span> <span class="Conceal">¦</span> row, <a href='../081print.mu.html#L16'>screen</a> <span class="Special">&lt;-</span> <a href='005-sandbox.mu.html#L393'>render-text</a> <a href='../081print.mu.html#L16'>screen</a>, sandbox-response, left, right, <span class="Constant">2/green</span>, row
+<span id="L199" class="LineNr">199 </span>  <span class="Conceal">¦</span> <span class="Conceal">¦</span> row, <a href='../081print.mu.html#L16'>screen</a> <span class="Special">&lt;-</span> <a href='005-sandbox.mu.html#L399'>render-text</a> <a href='../081print.mu.html#L16'>screen</a>, sandbox-response, left, right, <span class="Constant">2/green</span>, row
 <span id="L200" class="LineNr">200 </span>  <span class="Conceal">¦</span> <span class="Delimiter">}</span>
 <span id="L201" class="LineNr">201 </span>  <span class="Conceal">¦</span> <span class="muControl">jump</span> <span class="Constant">+render-sandbox-end</span>
 <span id="L202" class="LineNr">202 </span>  <span class="Delimiter">}</span>
 <span id="L203" class="LineNr">203 </span>]
 <span id="L204" class="LineNr">204 </span>
-<span id="L205" class="LineNr">205 </span><span class="muRecipe">before</span> <span class="Constant"><a href='005-sandbox.mu.html#L320'>&lt;end-render-sandbox-reset-hidden&gt;</a></span> [
+<span id="L205" class="LineNr">205 </span><span class="muRecipe">before</span> <span class="Constant"><a href='005-sandbox.mu.html#L326'>&lt;end-render-sandbox-reset-hidden&gt;</a></span> [
 <span id="L206" class="LineNr">206 </span>  *sandbox <span class="Special">&lt;-</span> put *sandbox, <span class="Constant">response-starting-row-on-screen:offset</span>,<span class="Constant"> 0</span>
 <span id="L207" class="LineNr">207 </span>]
 </pre>