about summary refs log tree commit diff stats
path: root/html/apps
diff options
context:
space:
mode:
Diffstat (limited to 'html/apps')
-rw-r--r--html/apps/assort.subx.html2
-rw-r--r--html/apps/braces.subx.html6
-rw-r--r--html/apps/calls.subx.html6
-rw-r--r--html/apps/dquotes.subx.html4
-rw-r--r--html/apps/mu.subx.html72
-rw-r--r--html/apps/pack.subx.html22
-rw-r--r--html/apps/sigils.subx.html4
-rw-r--r--html/apps/survey.subx.html22
-rw-r--r--html/apps/tests.subx.html4
9 files changed, 71 insertions, 71 deletions
diff --git a/html/apps/assort.subx.html b/html/apps/assort.subx.html
index a7452e6b..662db279 100644
--- a/html/apps/assort.subx.html
+++ b/html/apps/assort.subx.html
@@ -582,7 +582,7 @@ if ('onhashchange' in window) {
 <span id="L663" class="LineNr">663 </span>    68/push  <span class="Constant">&quot;==&quot;</span>/imm32
 <span id="L664" class="LineNr">664 </span>    52/push-edx
 <span id="L665" class="LineNr">665 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L666" class="LineNr">666 </span>    e8/call  <a href='../072slice.subx.html#L91'>slice-equal?</a>/disp32
+<span id="L666" class="LineNr">666 </span>    e8/call  <a href='../072slice.subx.html#L120'>slice-equal?</a>/disp32
 <span id="L667" class="LineNr">667 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L668" class="LineNr">668 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L669" class="LineNr">669 </span>    <span class="subxS1Comment"># . if (eax == false) goto check3</span>
diff --git a/html/apps/braces.subx.html b/html/apps/braces.subx.html
index 47428966..bc8eb925 100644
--- a/html/apps/braces.subx.html
+++ b/html/apps/braces.subx.html
@@ -259,7 +259,7 @@ if ('onhashchange' in window) {
 <span id="L200" class="LineNr">200 </span><span class="Constant">$subx-braces:check-for-break</span>:
 <span id="L201" class="LineNr">201 </span>    <span class="subxComment"># if (!slice-starts-with?(word-slice, &quot;break/&quot;)) goto next check</span>
 <span id="L202" class="LineNr">202 </span>    <span class="subxS1Comment"># . eax = slice-starts-with?(word-slice, &quot;break/&quot;)</span>
-<span id="L203" class="LineNr">203 </span>    (<a href='../072slice.subx.html#L458'>slice-starts-with?</a> %edi <span class="Constant">&quot;break/&quot;</span>)
+<span id="L203" class="LineNr">203 </span>    (<a href='../072slice.subx.html#L487'>slice-starts-with?</a> %edi <span class="Constant">&quot;break/&quot;</span>)
 <span id="L204" class="LineNr">204 </span>    <span class="subxS1Comment"># . if (eax == false) goto next check</span>
 <span id="L205" class="LineNr">205 </span>    3d/compare-eax-and 0/imm32/false
 <span id="L206" class="LineNr">206 </span>    74/jump-if-= $subx-braces:check-for-loop/disp8
@@ -275,7 +275,7 @@ if ('onhashchange' in window) {
 <span id="L216" class="LineNr">216 </span><span class="Constant">$subx-braces:check-for-loop</span>:
 <span id="L217" class="LineNr">217 </span>    <span class="subxComment"># if (!slice-starts-with?(word-slice, &quot;loop/&quot;)) emit word</span>
 <span id="L218" class="LineNr">218 </span>    <span class="subxS1Comment"># . eax = slice-starts-with?(word-slice, &quot;loop/&quot;)</span>
-<span id="L219" class="LineNr">219 </span>    (<a href='../072slice.subx.html#L458'>slice-starts-with?</a> %edi <span class="Constant">&quot;loop/&quot;</span>)
+<span id="L219" class="LineNr">219 </span>    (<a href='../072slice.subx.html#L487'>slice-starts-with?</a> %edi <span class="Constant">&quot;loop/&quot;</span>)
 <span id="L220" class="LineNr">220 </span>    <span class="subxS1Comment"># . if (eax == false) goto next check</span>
 <span id="L221" class="LineNr">221 </span>    3d/compare-eax-and 0/imm32/false
 <span id="L222" class="LineNr">222 </span>    74/jump-if-= $subx-braces:emit-word-slice/disp8
@@ -289,7 +289,7 @@ if ('onhashchange' in window) {
 <span id="L230" class="LineNr">230 </span>    <span class="subxComment"># fall through</span>
 <span id="L231" class="LineNr">231 </span><span class="Constant">$subx-braces:emit-word-slice</span>:
 <span id="L232" class="LineNr">232 </span>    <span class="subxComment"># print(out, word-slice &quot; &quot;)</span>
-<span id="L233" class="LineNr">233 </span>    (<a href='../072slice.subx.html#L880'>write-slice-buffered</a> *(ebp+0xc) %edi)
+<span id="L233" class="LineNr">233 </span>    (<a href='../072slice.subx.html#L909'>write-slice-buffered</a> *(ebp+0xc) %edi)
 <span id="L234" class="LineNr">234 </span>    (<a href='../065write-buffered.subx.html#L8'>write-buffered</a> *(ebp+0xc) <span class="SpecialChar"><a href='../051test.subx.html#L94'>Space</a></span>)
 <span id="L235" class="LineNr">235 </span>    <span class="subxComment"># loop to next word</span>
 <span id="L236" class="LineNr">236 </span>    e9/jump $subx-braces:word-loop/disp32
diff --git a/html/apps/calls.subx.html b/html/apps/calls.subx.html
index 0f1f352d..783ccff9 100644
--- a/html/apps/calls.subx.html
+++ b/html/apps/calls.subx.html
@@ -437,7 +437,7 @@ if ('onhashchange' in window) {
 <span id="L415" class="LineNr"> 415 </span>    51/push-ecx
 <span id="L416" class="LineNr"> 416 </span>    ff 6/subop/push *(ebp+8)
 <span id="L417" class="LineNr"> 417 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L418" class="LineNr"> 418 </span>    e8/call <a href='../072slice.subx.html#L880'>write-slice-buffered</a>/disp32
+<span id="L418" class="LineNr"> 418 </span>    e8/call <a href='../072slice.subx.html#L909'>write-slice-buffered</a>/disp32
 <span id="L419" class="LineNr"> 419 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L420" class="LineNr"> 420 </span>    81 0/subop/add %esp 8/imm32
 <span id="L421" class="LineNr"> 421 </span>    <span class="subxComment"># write-buffered(out, &quot;/imm32\n&quot;)</span>
@@ -463,7 +463,7 @@ if ('onhashchange' in window) {
 <span id="L441" class="LineNr"> 441 </span>    51/push-ecx
 <span id="L442" class="LineNr"> 442 </span>    ff 6/subop/push *(ebp+8)
 <span id="L443" class="LineNr"> 443 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L444" class="LineNr"> 444 </span>    e8/call <a href='../072slice.subx.html#L880'>write-slice-buffered</a>/disp32
+<span id="L444" class="LineNr"> 444 </span>    e8/call <a href='../072slice.subx.html#L909'>write-slice-buffered</a>/disp32
 <span id="L445" class="LineNr"> 445 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L446" class="LineNr"> 446 </span>    81 0/subop/add %esp 8/imm32
 <span id="L447" class="LineNr"> 447 </span>    <span class="subxComment"># write-buffered(out, &quot;\n&quot;)</span>
@@ -491,7 +491,7 @@ if ('onhashchange' in window) {
 <span id="L469" class="LineNr"> 469 </span>    51/push-ecx
 <span id="L470" class="LineNr"> 470 </span>    ff 6/subop/push *(ebp+8)
 <span id="L471" class="LineNr"> 471 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L472" class="LineNr"> 472 </span>    e8/call <a href='../072slice.subx.html#L880'>write-slice-buffered</a>/disp32
+<span id="L472" class="LineNr"> 472 </span>    e8/call <a href='../072slice.subx.html#L909'>write-slice-buffered</a>/disp32
 <span id="L473" class="LineNr"> 473 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L474" class="LineNr"> 474 </span>    81 0/subop/add %esp 8/imm32
 <span id="L475" class="LineNr"> 475 </span>    <span class="subxComment"># write-buffered(out, &quot;/disp32\n&quot;)</span>
diff --git a/html/apps/dquotes.subx.html b/html/apps/dquotes.subx.html
index 367f650e..71ed40a3 100644
--- a/html/apps/dquotes.subx.html
+++ b/html/apps/dquotes.subx.html
@@ -291,7 +291,7 @@ if ('onhashchange' in window) {
 <span id="L228" class="LineNr"> 228 </span>    52/push-edx
 <span id="L229" class="LineNr"> 229 </span>    ff          6/subop/push        1/mod/*+disp8   5/rm32/ebp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
 <span id="L230" class="LineNr"> 230 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L231" class="LineNr"> 231 </span>    e8/call  <a href='../072slice.subx.html#L880'>write-slice-buffered</a>/disp32
+<span id="L231" class="LineNr"> 231 </span>    e8/call  <a href='../072slice.subx.html#L909'>write-slice-buffered</a>/disp32
 <span id="L232" class="LineNr"> 232 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L233" class="LineNr"> 233 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L234" class="LineNr"> 234 </span>    <span class="subxComment"># fall through</span>
@@ -1334,7 +1334,7 @@ if ('onhashchange' in window) {
 <span id="L1453" class="LineNr">1453 </span>    53/push-ebx
 <span id="L1454" class="LineNr">1454 </span>    ff          6/subop/push        1/mod/*+disp8   5/rm32/ebp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>          8/disp8        <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+8)</span>
 <span id="L1455" class="LineNr">1455 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L1456" class="LineNr">1456 </span>    e8/call  <a href='../072slice.subx.html#L880'>write-slice-buffered</a>/disp32
+<span id="L1456" class="LineNr">1456 </span>    e8/call  <a href='../072slice.subx.html#L909'>write-slice-buffered</a>/disp32
 <span id="L1457" class="LineNr">1457 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1458" class="LineNr">1458 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>          8/imm32     <span class="Normal"> . </span>                   <span class="subxComment"># add to esp</span>
 <span id="L1459" class="LineNr">1459 </span><span class="Constant">$emit-metadata:end</span>:
diff --git a/html/apps/mu.subx.html b/html/apps/mu.subx.html
index a16e5c67..d63f57bf 100644
--- a/html/apps/mu.subx.html
+++ b/html/apps/mu.subx.html
@@ -1060,7 +1060,7 @@ if ('onhashchange' in window) {
 <span id="L1048" class="LineNr">1048 </span>      <span class="subxComment"># if (slice-equal?(word-slice, &quot;fn&quot;)) parse a function</span>
 <span id="L1049" class="LineNr">1049 </span>      {
 <span id="L1050" class="LineNr">1050 </span><span class="Constant">$parse-mu:fn</span>:
-<span id="L1051" class="LineNr">1051 </span>        (<a href='../072slice.subx.html#L91'>slice-equal?</a> %edx <span class="Constant">&quot;fn&quot;</span>)
+<span id="L1051" class="LineNr">1051 </span>        (<a href='../072slice.subx.html#L120'>slice-equal?</a> %edx <span class="Constant">&quot;fn&quot;</span>)
 <span id="L1052" class="LineNr">1052 </span>        3d/compare-eax-and 0/imm32
 <span id="L1053" class="LineNr">1053 </span>        0f 84/jump-if-= <span class="Constant">break</span>/disp32
 <span id="L1054" class="LineNr">1054 </span>        <span class="subxComment"># var new-function/eax : (handle function) = populate-mu-function(in, new-function, vars)</span>
@@ -1095,7 +1095,7 @@ if ('onhashchange' in window) {
 <span id="L1083" class="LineNr">1083 </span><span class="Constant">$parse-mu:error1</span>:
 <span id="L1084" class="LineNr">1084 </span>    <span class="subxComment"># error(&quot;unexpected top-level command: &quot; word-slice &quot;\n&quot;)</span>
 <span id="L1085" class="LineNr">1085 </span>    (<a href='../065write-buffered.subx.html#L8'>write-buffered</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span> <span class="Constant">&quot;unexpected top-level command: &quot;</span>)
-<span id="L1086" class="LineNr">1086 </span>    (<a href='../072slice.subx.html#L880'>write-slice-buffered</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span> %edx)
+<span id="L1086" class="LineNr">1086 </span>    (<a href='../072slice.subx.html#L909'>write-slice-buffered</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span> %edx)
 <span id="L1087" class="LineNr">1087 </span>    (<a href='../065write-buffered.subx.html#L8'>write-buffered</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span> <span class="Constant">&quot;\n&quot;</span>)
 <span id="L1088" class="LineNr">1088 </span>    (<a href='../064write-byte.subx.html#L81'>flush</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span>)
 <span id="L1089" class="LineNr">1089 </span>    <span class="subxS1Comment"># . syscall(exit, 1)</span>
@@ -1108,7 +1108,7 @@ if ('onhashchange' in window) {
 <span id="L1096" class="LineNr">1096 </span>    <span class="subxComment"># error(vars-&gt;top &quot; vars not reclaimed after fn '&quot; new-function-&gt;name &quot;'\n&quot;)</span>
 <span id="L1097" class="LineNr">1097 </span>    (<a href='../066print-int.subx.html#L266'>print-int32-buffered</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span> *ebx)
 <span id="L1098" class="LineNr">1098 </span>    (<a href='../065write-buffered.subx.html#L8'>write-buffered</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span> <span class="Constant">&quot; vars not reclaimed after fn '&quot;</span>)
-<span id="L1099" class="LineNr">1099 </span>    (<a href='../072slice.subx.html#L880'>write-slice-buffered</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span> *eax)  <span class="subxComment"># Function-name</span>
+<span id="L1099" class="LineNr">1099 </span>    (<a href='../072slice.subx.html#L909'>write-slice-buffered</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span> *eax)  <span class="subxComment"># Function-name</span>
 <span id="L1100" class="LineNr">1100 </span>    (<a href='../065write-buffered.subx.html#L8'>write-buffered</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span> <span class="Constant">&quot;'\n&quot;</span>)
 <span id="L1101" class="LineNr">1101 </span>    (<a href='../064write-byte.subx.html#L81'>flush</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span>)
 <span id="L1102" class="LineNr">1102 </span>    <span class="subxS1Comment"># . syscall(exit, 1)</span>
@@ -1179,19 +1179,19 @@ if ('onhashchange' in window) {
 <span id="L1167" class="LineNr">1167 </span>    (<a href='../076next-word.subx.html#L10'>next-word</a> *(ebp+8) %ecx)
 <span id="L1168" class="LineNr">1168 </span>    <span class="subxComment"># error checking</span>
 <span id="L1169" class="LineNr">1169 </span>    <span class="subxComment"># if (word-slice == '{') abort</span>
-<span id="L1170" class="LineNr">1170 </span>    (<a href='../072slice.subx.html#L91'>slice-equal?</a> %ecx <span class="Constant">&quot;{&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
+<span id="L1170" class="LineNr">1170 </span>    (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;{&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
 <span id="L1171" class="LineNr">1171 </span>    3d/compare-eax-and 0/imm32
 <span id="L1172" class="LineNr">1172 </span>    0f 85/jump-if-!= $populate-mu-function-header:error1/disp32
 <span id="L1173" class="LineNr">1173 </span>    <span class="subxComment"># if (word-slice == '-&gt;') abort</span>
-<span id="L1174" class="LineNr">1174 </span>    (<a href='../072slice.subx.html#L91'>slice-equal?</a> %ecx <span class="Constant">&quot;-&gt;&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
+<span id="L1174" class="LineNr">1174 </span>    (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;-&gt;&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
 <span id="L1175" class="LineNr">1175 </span>    3d/compare-eax-and 0/imm32
 <span id="L1176" class="LineNr">1176 </span>    0f 85/jump-if-!= $populate-mu-function-header:error1/disp32
 <span id="L1177" class="LineNr">1177 </span>    <span class="subxComment"># if (word-slice == '}') abort</span>
-<span id="L1178" class="LineNr">1178 </span>    (<a href='../072slice.subx.html#L91'>slice-equal?</a> %ecx <span class="Constant">&quot;}&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
+<span id="L1178" class="LineNr">1178 </span>    (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;}&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
 <span id="L1179" class="LineNr">1179 </span>    3d/compare-eax-and 0/imm32
 <span id="L1180" class="LineNr">1180 </span>    0f 85/jump-if-!= $populate-mu-function-header:error1/disp32
 <span id="L1181" class="LineNr">1181 </span>    <span class="subxComment"># save function name</span>
-<span id="L1182" class="LineNr">1182 </span>    (<a href='../072slice.subx.html#L1015'>slice-to-string</a> <span class="SpecialChar"><a href='../069allocate.subx.html#L22'>Heap</a></span> %ecx)  <span class="subxComment"># =&gt; eax</span>
+<span id="L1182" class="LineNr">1182 </span>    (<a href='../072slice.subx.html#L1044'>slice-to-string</a> <span class="SpecialChar"><a href='../069allocate.subx.html#L22'>Heap</a></span> %ecx)  <span class="subxComment"># =&gt; eax</span>
 <span id="L1183" class="LineNr">1183 </span>    89/&lt;- *edi 0/r32/eax  <span class="subxComment"># Function-name</span>
 <span id="L1184" class="LineNr">1184 </span>    <span class="subxComment"># initialize default subx-name as well</span>
 <span id="L1185" class="LineNr">1185 </span>    89/&lt;- *(edi+4) 0/r32/eax  <span class="subxComment"># Function-subx-name</span>
@@ -1200,15 +1200,15 @@ if ('onhashchange' in window) {
 <span id="L1188" class="LineNr">1188 </span><span class="Constant">$populate-mu-function-header:check-for-inout</span>:
 <span id="L1189" class="LineNr">1189 </span>      (<a href='../076next-word.subx.html#L10'>next-word</a> *(ebp+8) %ecx)
 <span id="L1190" class="LineNr">1190 </span>      <span class="subxComment"># if (word-slice == '{') goto done</span>
-<span id="L1191" class="LineNr">1191 </span>      (<a href='../072slice.subx.html#L91'>slice-equal?</a> %ecx <span class="Constant">&quot;{&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
+<span id="L1191" class="LineNr">1191 </span>      (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;{&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
 <span id="L1192" class="LineNr">1192 </span>      3d/compare-eax-and 0/imm32
 <span id="L1193" class="LineNr">1193 </span>      0f 85/jump-if-!= $populate-mu-function-header:done/disp32
 <span id="L1194" class="LineNr">1194 </span>      <span class="subxComment"># if (word-slice == '-&gt;') break</span>
-<span id="L1195" class="LineNr">1195 </span>      (<a href='../072slice.subx.html#L91'>slice-equal?</a> %ecx <span class="Constant">&quot;-&gt;&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
+<span id="L1195" class="LineNr">1195 </span>      (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;-&gt;&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
 <span id="L1196" class="LineNr">1196 </span>      3d/compare-eax-and 0/imm32
 <span id="L1197" class="LineNr">1197 </span>      0f 85/jump-if-!= <span class="Constant">break</span>/disp32
 <span id="L1198" class="LineNr">1198 </span>      <span class="subxComment"># if (word-slice == '}') abort</span>
-<span id="L1199" class="LineNr">1199 </span>      (<a href='../072slice.subx.html#L91'>slice-equal?</a> %ecx <span class="Constant">&quot;}&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
+<span id="L1199" class="LineNr">1199 </span>      (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;}&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
 <span id="L1200" class="LineNr">1200 </span>      3d/compare-eax-and 0/imm32
 <span id="L1201" class="LineNr">1201 </span>      0f 85/jump-if-!= $populate-mu-function-header:error1/disp32
 <span id="L1202" class="LineNr">1202 </span>      <span class="subxComment"># var v/ebx : (handle var) = parse-var-with-type(word-slice, first-line)</span>
@@ -1234,15 +1234,15 @@ if ('onhashchange' in window) {
 <span id="L1222" class="LineNr">1222 </span><span class="Constant">$parse-var-with-type:check-for-out</span>:
 <span id="L1223" class="LineNr">1223 </span>      (<a href='../076next-word.subx.html#L10'>next-word</a> *(ebp+8) %ecx)
 <span id="L1224" class="LineNr">1224 </span>      <span class="subxComment"># if (word-slice == '{') break</span>
-<span id="L1225" class="LineNr">1225 </span>      (<a href='../072slice.subx.html#L91'>slice-equal?</a> %ecx <span class="Constant">&quot;{&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
+<span id="L1225" class="LineNr">1225 </span>      (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;{&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
 <span id="L1226" class="LineNr">1226 </span>      3d/compare-eax-and 0/imm32
 <span id="L1227" class="LineNr">1227 </span>      0f 85/jump-if-!= <span class="Constant">break</span>/disp32
 <span id="L1228" class="LineNr">1228 </span>      <span class="subxComment"># if (word-slice == '-&gt;') abort</span>
-<span id="L1229" class="LineNr">1229 </span>      (<a href='../072slice.subx.html#L91'>slice-equal?</a> %ecx <span class="Constant">&quot;-&gt;&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
+<span id="L1229" class="LineNr">1229 </span>      (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;-&gt;&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
 <span id="L1230" class="LineNr">1230 </span>      3d/compare-eax-and 0/imm32
 <span id="L1231" class="LineNr">1231 </span>      0f 85/jump-if-!= $populate-mu-function-header:error1/disp32
 <span id="L1232" class="LineNr">1232 </span>      <span class="subxComment"># if (word-slice == '}') abort</span>
-<span id="L1233" class="LineNr">1233 </span>      (<a href='../072slice.subx.html#L91'>slice-equal?</a> %ecx <span class="Constant">&quot;}&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
+<span id="L1233" class="LineNr">1233 </span>      (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;}&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
 <span id="L1234" class="LineNr">1234 </span>      3d/compare-eax-and 0/imm32
 <span id="L1235" class="LineNr">1235 </span>      0f 85/jump-if-!= $populate-mu-function-header:error1/disp32
 <span id="L1236" class="LineNr">1236 </span>      <span class="subxComment">#</span>
@@ -1548,7 +1548,7 @@ if ('onhashchange' in window) {
 <span id="L1536" class="LineNr">1536 </span>      89/&lt;- *(ecx+4) 0/r32/eax
 <span id="L1537" class="LineNr">1537 </span>    }
 <span id="L1538" class="LineNr">1538 </span><span class="Constant">$parse-var-with-type:write-name</span>:
-<span id="L1539" class="LineNr">1539 </span>    (<a href='../072slice.subx.html#L1015'>slice-to-string</a> <span class="SpecialChar"><a href='../069allocate.subx.html#L22'>Heap</a></span> %ecx)  <span class="subxComment"># =&gt; eax</span>
+<span id="L1539" class="LineNr">1539 </span>    (<a href='../072slice.subx.html#L1044'>slice-to-string</a> <span class="SpecialChar"><a href='../069allocate.subx.html#L22'>Heap</a></span> %ecx)  <span class="subxComment"># =&gt; eax</span>
 <span id="L1540" class="LineNr">1540 </span>    89/&lt;- *edi 0/r32/eax  <span class="subxComment"># Var-name</span>
 <span id="L1541" class="LineNr">1541 </span>    <span class="subxComment"># save v-&gt;register</span>
 <span id="L1542" class="LineNr">1542 </span><span class="Constant">$parse-var-with-type:save-register</span>:
@@ -1581,21 +1581,21 @@ if ('onhashchange' in window) {
 <span id="L1569" class="LineNr">1569 </span>      8b/-&gt; *ecx 0/r32/eax
 <span id="L1570" class="LineNr">1570 </span>      39/compare 0/r32/eax *(ecx+4)
 <span id="L1571" class="LineNr">1571 </span>      76/jump-if-&lt;= <span class="Constant">break</span>/disp8
-<span id="L1572" class="LineNr">1572 </span>      (<a href='../072slice.subx.html#L1015'>slice-to-string</a> <span class="SpecialChar"><a href='../069allocate.subx.html#L22'>Heap</a></span> %ecx)
+<span id="L1572" class="LineNr">1572 </span>      (<a href='../072slice.subx.html#L1044'>slice-to-string</a> <span class="SpecialChar"><a href='../069allocate.subx.html#L22'>Heap</a></span> %ecx)
 <span id="L1573" class="LineNr">1573 </span>      89/&lt;- *(edi+0x10) 0/r32/eax  <span class="subxComment"># Var-register</span>
 <span id="L1574" class="LineNr">1574 </span>    }
 <span id="L1575" class="LineNr">1575 </span>    <span class="subxComment"># save v-&gt;type</span>
 <span id="L1576" class="LineNr">1576 </span>    (<a href='mu.subx.html#L1640'>next-mu-token</a> *(ebp+0xc) %ecx)
 <span id="L1577" class="LineNr">1577 </span>    <span class="subxComment"># if (word-slice == '{') abort</span>
-<span id="L1578" class="LineNr">1578 </span>    (<a href='../072slice.subx.html#L91'>slice-equal?</a> %ecx <span class="Constant">&quot;{&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
+<span id="L1578" class="LineNr">1578 </span>    (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;{&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
 <span id="L1579" class="LineNr">1579 </span>    3d/compare-eax-and 0/imm32
 <span id="L1580" class="LineNr">1580 </span>    0f 85/jump-if-!= $parse-var-with-type:abort/disp32
 <span id="L1581" class="LineNr">1581 </span>    <span class="subxComment"># if (word-slice == '-&gt;') abort</span>
-<span id="L1582" class="LineNr">1582 </span>    (<a href='../072slice.subx.html#L91'>slice-equal?</a> %ecx <span class="Constant">&quot;-&gt;&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
+<span id="L1582" class="LineNr">1582 </span>    (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;-&gt;&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
 <span id="L1583" class="LineNr">1583 </span>    3d/compare-eax-and 0/imm32
 <span id="L1584" class="LineNr">1584 </span>    0f 85/jump-if-!= $parse-var-with-type:abort/disp32
 <span id="L1585" class="LineNr">1585 </span>    <span class="subxComment"># if (word-slice == '}') abort</span>
-<span id="L1586" class="LineNr">1586 </span>    (<a href='../072slice.subx.html#L91'>slice-equal?</a> %ecx <span class="Constant">&quot;}&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
+<span id="L1586" class="LineNr">1586 </span>    (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;}&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
 <span id="L1587" class="LineNr">1587 </span>    3d/compare-eax-and 0/imm32
 <span id="L1588" class="LineNr">1588 </span>    0f 85/jump-if-!= $parse-var-with-type:abort/disp32
 <span id="L1589" class="LineNr">1589 </span>    <span class="subxComment"># if (slice-empty?(type)) skip</span>
@@ -1605,15 +1605,15 @@ if ('onhashchange' in window) {
 <span id="L1593" class="LineNr">1593 </span>      0f 84/jump-if-= <span class="Constant">break</span>/disp32
 <span id="L1594" class="LineNr">1594 </span>      (<a href='mu.subx.html#L1640'>next-mu-token</a> *(ebp+0xc) %ecx)
 <span id="L1595" class="LineNr">1595 </span>      <span class="subxComment"># if (word-slice == '{') abort</span>
-<span id="L1596" class="LineNr">1596 </span>      (<a href='../072slice.subx.html#L91'>slice-equal?</a> %ecx <span class="Constant">&quot;{&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
+<span id="L1596" class="LineNr">1596 </span>      (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;{&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
 <span id="L1597" class="LineNr">1597 </span>      3d/compare-eax-and 0/imm32
 <span id="L1598" class="LineNr">1598 </span>      0f 85/jump-if-!= $parse-var-with-type:abort/disp32
 <span id="L1599" class="LineNr">1599 </span>      <span class="subxComment"># if (word-slice == '-&gt;') abort</span>
-<span id="L1600" class="LineNr">1600 </span>      (<a href='../072slice.subx.html#L91'>slice-equal?</a> %ecx <span class="Constant">&quot;-&gt;&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
+<span id="L1600" class="LineNr">1600 </span>      (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;-&gt;&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
 <span id="L1601" class="LineNr">1601 </span>      3d/compare-eax-and 0/imm32
 <span id="L1602" class="LineNr">1602 </span>      0f 85/jump-if-!= $parse-var-with-type:abort/disp32
 <span id="L1603" class="LineNr">1603 </span>      <span class="subxComment"># if (word-slice == '}') abort</span>
-<span id="L1604" class="LineNr">1604 </span>      (<a href='../072slice.subx.html#L91'>slice-equal?</a> %ecx <span class="Constant">&quot;}&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
+<span id="L1604" class="LineNr">1604 </span>      (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;}&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
 <span id="L1605" class="LineNr">1605 </span>      3d/compare-eax-and 0/imm32
 <span id="L1606" class="LineNr">1606 </span>      0f 85/jump-if-!= $parse-var-with-type:abort/disp32
 <span id="L1607" class="LineNr">1607 </span>    }
@@ -1739,7 +1739,7 @@ if ('onhashchange' in window) {
 <span id="L1727" class="LineNr">1727 </span>        eb/jump $pos-slice:end/disp8
 <span id="L1728" class="LineNr">1728 </span>      }
 <span id="L1729" class="LineNr">1729 </span>      <span class="subxComment"># if (slice-equal?(s, *curr)) break</span>
-<span id="L1730" class="LineNr">1730 </span>      (<a href='../072slice.subx.html#L91'>slice-equal?</a> *(ebp+0xc) *edx)  <span class="subxComment"># =&gt; eax</span>
+<span id="L1730" class="LineNr">1730 </span>      (<a href='../072slice.subx.html#L120'>slice-equal?</a> *(ebp+0xc) *edx)  <span class="subxComment"># =&gt; eax</span>
 <span id="L1731" class="LineNr">1731 </span>      3d/compare-eax-and 0/imm32
 <span id="L1732" class="LineNr">1732 </span>      75/jump-if-!= <span class="Constant">break</span>/disp8
 <span id="L1733" class="LineNr">1733 </span>      <span class="subxComment"># ++index</span>
@@ -2316,7 +2316,7 @@ if ('onhashchange' in window) {
 <span id="L2304" class="LineNr">2304 </span>      <span class="subxComment"># if slice-equal?(word-slice, &quot;{&quot;)</span>
 <span id="L2305" class="LineNr">2305 </span>      {
 <span id="L2306" class="LineNr">2306 </span><span class="Constant">$parse-mu-block:check-for-block</span>:
-<span id="L2307" class="LineNr">2307 </span>        (<a href='../072slice.subx.html#L91'>slice-equal?</a> %edx <span class="Constant">&quot;{&quot;</span>)
+<span id="L2307" class="LineNr">2307 </span>        (<a href='../072slice.subx.html#L120'>slice-equal?</a> %edx <span class="Constant">&quot;{&quot;</span>)
 <span id="L2308" class="LineNr">2308 </span>        3d/compare-eax-and 0/imm32
 <span id="L2309" class="LineNr">2309 </span>        74/jump-if-= <span class="Constant">break</span>/disp8
 <span id="L2310" class="LineNr">2310 </span>        (<a href='mu.subx.html#L2381'>check-no-tokens-left</a> %ecx)
@@ -2327,7 +2327,7 @@ if ('onhashchange' in window) {
 <span id="L2315" class="LineNr">2315 </span>      }
 <span id="L2316" class="LineNr">2316 </span>      <span class="subxComment"># if slice-equal?(word-slice, &quot;}&quot;) break</span>
 <span id="L2317" class="LineNr">2317 </span><span class="Constant">$parse-mu-block:check-for-end</span>:
-<span id="L2318" class="LineNr">2318 </span>      (<a href='../072slice.subx.html#L91'>slice-equal?</a> %edx <span class="Constant">&quot;}&quot;</span>)
+<span id="L2318" class="LineNr">2318 </span>      (<a href='../072slice.subx.html#L120'>slice-equal?</a> %edx <span class="Constant">&quot;}&quot;</span>)
 <span id="L2319" class="LineNr">2319 </span>      3d/compare-eax-and 0/imm32
 <span id="L2320" class="LineNr">2320 </span>      0f 85/jump-if-!= <span class="Constant">break</span>/disp32
 <span id="L2321" class="LineNr">2321 </span>      <span class="subxComment"># if slice-ends-with?(word-slice, &quot;:&quot;) parse named block and append</span>
@@ -2348,7 +2348,7 @@ if ('onhashchange' in window) {
 <span id="L2336" class="LineNr">2336 </span>      <span class="subxComment"># if slice-equal?(word-slice, &quot;var&quot;)</span>
 <span id="L2337" class="LineNr">2337 </span>      {
 <span id="L2338" class="LineNr">2338 </span><span class="Constant">$parse-mu-block:check-for-var</span>:
-<span id="L2339" class="LineNr">2339 </span>        (<a href='../072slice.subx.html#L91'>slice-equal?</a> %edx <span class="Constant">&quot;var&quot;</span>)
+<span id="L2339" class="LineNr">2339 </span>        (<a href='../072slice.subx.html#L120'>slice-equal?</a> %edx <span class="Constant">&quot;var&quot;</span>)
 <span id="L2340" class="LineNr">2340 </span>        3d/compare-eax-and 0/imm32
 <span id="L2341" class="LineNr">2341 </span>        74/jump-if-= <span class="Constant">break</span>/disp8
 <span id="L2342" class="LineNr">2342 </span>        <span class="subxComment">#</span>
@@ -2542,7 +2542,7 @@ if ('onhashchange' in window) {
 <span id="L2530" class="LineNr">2530 </span>        3d/compare-eax-and 0/imm32
 <span id="L2531" class="LineNr">2531 </span>        0f 85/jump-if-!= <span class="Constant">break</span>/disp32
 <span id="L2532" class="LineNr">2532 </span>        <span class="subxComment"># if (name == &quot;&lt;-&quot;) break</span>
-<span id="L2533" class="LineNr">2533 </span>        (<a href='../072slice.subx.html#L91'>slice-equal?</a> %ecx <span class="Constant">&quot;&lt;-&quot;</span>)
+<span id="L2533" class="LineNr">2533 </span>        (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;&lt;-&quot;</span>)
 <span id="L2534" class="LineNr">2534 </span>        3d/compare-eax-and 0/imm32
 <span id="L2535" class="LineNr">2535 </span>        75/jump-if-!= <span class="Constant">break</span>/disp8
 <span id="L2536" class="LineNr">2536 </span>        <span class="subxComment"># assert(is-identifier?(name))</span>
@@ -2558,7 +2558,7 @@ if ('onhashchange' in window) {
 <span id="L2546" class="LineNr">2546 </span>    }
 <span id="L2547" class="LineNr">2547 </span><span class="Constant">$parse-mu-stmt:read-operation</span>:
 <span id="L2548" class="LineNr">2548 </span>    (<a href='../076next-word.subx.html#L10'>next-word</a> *(ebp+8) %ecx)
-<span id="L2549" class="LineNr">2549 </span>    (<a href='../072slice.subx.html#L1015'>slice-to-string</a> <span class="SpecialChar"><a href='../069allocate.subx.html#L22'>Heap</a></span> %ecx)
+<span id="L2549" class="LineNr">2549 </span>    (<a href='../072slice.subx.html#L1044'>slice-to-string</a> <span class="SpecialChar"><a href='../069allocate.subx.html#L22'>Heap</a></span> %ecx)
 <span id="L2550" class="LineNr">2550 </span>    89/&lt;- *(edi+4) 0/r32/eax  <span class="subxComment"># Stmt1-operation</span>
 <span id="L2551" class="LineNr">2551 </span>    {
 <span id="L2552" class="LineNr">2552 </span><span class="Constant">$parse-mu-stmt:read-inouts</span>:
@@ -2569,7 +2569,7 @@ if ('onhashchange' in window) {
 <span id="L2557" class="LineNr">2557 </span>      3d/compare-eax-and 0/imm32
 <span id="L2558" class="LineNr">2558 </span>      0f 85/jump-if-!= <span class="Constant">break</span>/disp32
 <span id="L2559" class="LineNr">2559 </span>      <span class="subxComment"># if (name == &quot;&lt;-&quot;) abort</span>
-<span id="L2560" class="LineNr">2560 </span>      (<a href='../072slice.subx.html#L91'>slice-equal?</a> %ecx <span class="Constant">&quot;&lt;-&quot;</span>)
+<span id="L2560" class="LineNr">2560 </span>      (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;&lt;-&quot;</span>)
 <span id="L2561" class="LineNr">2561 </span>      3d/compare-eax-and 0/imm32
 <span id="L2562" class="LineNr">2562 </span>      0f 85/jump-if-!= $parse-mu-stmt:abort2/disp32
 <span id="L2563" class="LineNr">2563 </span>      <span class="subxComment">#</span>
@@ -2594,7 +2594,7 @@ if ('onhashchange' in window) {
 <span id="L2582" class="LineNr">2582 </span><span class="Constant">$parse-mu-stmt:abort</span>:
 <span id="L2583" class="LineNr">2583 </span>    <span class="subxComment"># error(&quot;invalid identifier '&quot; name &quot;'\n&quot;)</span>
 <span id="L2584" class="LineNr">2584 </span>    (<a href='../065write-buffered.subx.html#L8'>write-buffered</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span> <span class="Constant">&quot;invalid identifier '&quot;</span>)
-<span id="L2585" class="LineNr">2585 </span>    (<a href='../072slice.subx.html#L880'>write-slice-buffered</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span> %ecx)
+<span id="L2585" class="LineNr">2585 </span>    (<a href='../072slice.subx.html#L909'>write-slice-buffered</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span> %ecx)
 <span id="L2586" class="LineNr">2586 </span>    (<a href='../065write-buffered.subx.html#L8'>write-buffered</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span> <span class="Constant">&quot;'\n&quot;</span>)
 <span id="L2587" class="LineNr">2587 </span>    (<a href='../064write-byte.subx.html#L81'>flush</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span>)
 <span id="L2588" class="LineNr">2588 </span>    <span class="subxS1Comment"># . syscall(exit, 1)</span>
@@ -2646,7 +2646,7 @@ if ('onhashchange' in window) {
 <span id="L2634" class="LineNr">2634 </span>      b8/copy-to-eax 0/imm32/false/result  <span class="subxComment"># restore result (if we're here it's still false)</span>
 <span id="L2635" class="LineNr">2635 </span>      0f 84/jump-if-= <span class="Constant">break</span>/disp32
 <span id="L2636" class="LineNr">2636 </span>      <span class="subxComment"># if slice-equal?(word-slice, '&lt;-') return true</span>
-<span id="L2637" class="LineNr">2637 </span>      (<a href='../072slice.subx.html#L91'>slice-equal?</a> %ecx <span class="Constant">&quot;&lt;-&quot;</span>)
+<span id="L2637" class="LineNr">2637 </span>      (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;&lt;-&quot;</span>)
 <span id="L2638" class="LineNr">2638 </span>      3d/compare-eax-and 0/imm32
 <span id="L2639" class="LineNr">2639 </span>      74/jump-if-= <span class="Constant">loop</span>/disp8
 <span id="L2640" class="LineNr">2640 </span>      b8/copy-to-eax 1/imm32/true
@@ -2717,7 +2717,7 @@ if ('onhashchange' in window) {
 <span id="L2705" class="LineNr">2705 </span>    55/push-ebp
 <span id="L2706" class="LineNr">2706 </span>    89/&lt;- %ebp 4/r32/esp
 <span id="L2707" class="LineNr">2707 </span>    <span class="subxComment"># var target/eax : (handle array byte) = slice-to-string(name)</span>
-<span id="L2708" class="LineNr">2708 </span>    (<a href='../072slice.subx.html#L1015'>slice-to-string</a> <span class="SpecialChar"><a href='../069allocate.subx.html#L22'>Heap</a></span> *(ebp+8))  <span class="subxComment"># =&gt; eax</span>
+<span id="L2708" class="LineNr">2708 </span>    (<a href='../072slice.subx.html#L1044'>slice-to-string</a> <span class="SpecialChar"><a href='../069allocate.subx.html#L22'>Heap</a></span> *(ebp+8))  <span class="subxComment"># =&gt; eax</span>
 <span id="L2709" class="LineNr">2709 </span>    <span class="subxComment">#</span>
 <span id="L2710" class="LineNr">2710 </span>    (<a href='mu.subx.html#L2732'>lookup-var-helper</a> %eax *(ebp+0xc))  <span class="subxComment"># =&gt; eax</span>
 <span id="L2711" class="LineNr">2711 </span>    <span class="subxComment"># if (result == 0) abort</span>
@@ -2731,7 +2731,7 @@ if ('onhashchange' in window) {
 <span id="L2719" class="LineNr">2719 </span>
 <span id="L2720" class="LineNr">2720 </span><span class="Constant">$lookup-var:abort</span>:
 <span id="L2721" class="LineNr">2721 </span>    (<a href='../065write-buffered.subx.html#L8'>write-buffered</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span> <span class="Constant">&quot;unknown variable '&quot;</span>)
-<span id="L2722" class="LineNr">2722 </span>    (<a href='../072slice.subx.html#L880'>write-slice-buffered</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span> *(ebp+8))
+<span id="L2722" class="LineNr">2722 </span>    (<a href='../072slice.subx.html#L909'>write-slice-buffered</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span> *(ebp+8))
 <span id="L2723" class="LineNr">2723 </span>    (<a href='../065write-buffered.subx.html#L8'>write-buffered</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span> <span class="Constant">&quot;'\n&quot;</span>)
 <span id="L2724" class="LineNr">2724 </span>    (<a href='../064write-byte.subx.html#L81'>flush</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span>)
 <span id="L2725" class="LineNr">2725 </span>    <span class="subxS1Comment"># . syscall(exit, 1)</span>
@@ -2798,7 +2798,7 @@ if ('onhashchange' in window) {
 <span id="L2786" class="LineNr">2786 </span>
 <span id="L2787" class="LineNr">2787 </span><span class="Constant">$lookup-var-helper:error1</span>:
 <span id="L2788" class="LineNr">2788 </span>    (<a href='../065write-buffered.subx.html#L8'>write-buffered</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span> <span class="Constant">&quot;malformed stack when looking up '&quot;</span>)
-<span id="L2789" class="LineNr">2789 </span>    (<a href='../072slice.subx.html#L880'>write-slice-buffered</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span> *(ebp+8))
+<span id="L2789" class="LineNr">2789 </span>    (<a href='../072slice.subx.html#L909'>write-slice-buffered</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span> *(ebp+8))
 <span id="L2790" class="LineNr">2790 </span>    (<a href='../065write-buffered.subx.html#L8'>write-buffered</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span> <span class="Constant">&quot;'\n&quot;</span>)
 <span id="L2791" class="LineNr">2791 </span>    (<a href='../064write-byte.subx.html#L81'>flush</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span>)
 <span id="L2792" class="LineNr">2792 </span>    <span class="subxS1Comment"># . syscall(exit, 1)</span>
@@ -2815,7 +2815,7 @@ if ('onhashchange' in window) {
 <span id="L2803" class="LineNr">2803 </span>    <span class="subxS1Comment"># . save registers</span>
 <span id="L2804" class="LineNr">2804 </span>    51/push-ecx
 <span id="L2805" class="LineNr">2805 </span>    <span class="subxComment"># var target/ecx : (handle array byte) = slice-to-string(name)</span>
-<span id="L2806" class="LineNr">2806 </span>    (<a href='../072slice.subx.html#L1015'>slice-to-string</a> <span class="SpecialChar"><a href='../069allocate.subx.html#L22'>Heap</a></span> *(ebp+8))  <span class="subxComment"># =&gt; eax</span>
+<span id="L2806" class="LineNr">2806 </span>    (<a href='../072slice.subx.html#L1044'>slice-to-string</a> <span class="SpecialChar"><a href='../069allocate.subx.html#L22'>Heap</a></span> *(ebp+8))  <span class="subxComment"># =&gt; eax</span>
 <span id="L2807" class="LineNr">2807 </span>    89/&lt;- %ecx 0/r32/eax
 <span id="L2808" class="LineNr">2808 </span>    <span class="subxComment">#</span>
 <span id="L2809" class="LineNr">2809 </span>    (<a href='mu.subx.html#L2732'>lookup-var-helper</a> *(ebp+8) *(ebp+0xc))  <span class="subxComment"># =&gt; eax</span>
@@ -2974,7 +2974,7 @@ if ('onhashchange' in window) {
 <span id="L2962" class="LineNr">2962 </span>    3d/compare-eax-and 0/imm32
 <span id="L2963" class="LineNr">2963 </span>    0f 84/jump-if-= $new-literal-integer:abort/disp32
 <span id="L2964" class="LineNr">2964 </span>    <span class="subxComment"># var s/ecx : (addr array byte)</span>
-<span id="L2965" class="LineNr">2965 </span>    (<a href='../072slice.subx.html#L1015'>slice-to-string</a> <span class="SpecialChar"><a href='../069allocate.subx.html#L22'>Heap</a></span> *(ebp+0xc))  <span class="subxComment"># =&gt; eax</span>
+<span id="L2965" class="LineNr">2965 </span>    (<a href='../072slice.subx.html#L1044'>slice-to-string</a> <span class="SpecialChar"><a href='../069allocate.subx.html#L22'>Heap</a></span> *(ebp+0xc))  <span class="subxComment"># =&gt; eax</span>
 <span id="L2966" class="LineNr">2966 </span>    89/&lt;- %ecx 0/r32/eax
 <span id="L2967" class="LineNr">2967 </span>    <span class="subxComment">#</span>
 <span id="L2968" class="LineNr">2968 </span>    (<a href='../069allocate.subx.html#L59'>allocate</a> *(ebp+8) *<span class="SpecialChar"><a href='mu.subx.html#L335'>Var-size</a></span>)  <span class="subxComment"># =&gt; eax</span>
@@ -2996,7 +2996,7 @@ if ('onhashchange' in window) {
 <span id="L2984" class="LineNr">2984 </span>
 <span id="L2985" class="LineNr">2985 </span><span class="Constant">$new-literal-integer:abort</span>:
 <span id="L2986" class="LineNr">2986 </span>    (<a href='../065write-buffered.subx.html#L8'>write-buffered</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span> <span class="Constant">&quot;variable cannot begin with a digit '&quot;</span>)
-<span id="L2987" class="LineNr">2987 </span>    (<a href='../072slice.subx.html#L880'>write-slice-buffered</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span> *(ebp+0xc))
+<span id="L2987" class="LineNr">2987 </span>    (<a href='../072slice.subx.html#L909'>write-slice-buffered</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span> *(ebp+0xc))
 <span id="L2988" class="LineNr">2988 </span>    (<a href='../065write-buffered.subx.html#L8'>write-buffered</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span> <span class="Constant">&quot;'\n&quot;</span>)
 <span id="L2989" class="LineNr">2989 </span>    (<a href='../064write-byte.subx.html#L81'>flush</a> <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span>)
 <span id="L2990" class="LineNr">2990 </span>    <span class="subxS1Comment"># . syscall(exit, 1)</span>
diff --git a/html/apps/pack.subx.html b/html/apps/pack.subx.html
index d3cb17a9..c44ed3f1 100644
--- a/html/apps/pack.subx.html
+++ b/html/apps/pack.subx.html
@@ -251,7 +251,7 @@ if ('onhashchange' in window) {
 <span id="L253" class="LineNr"> 253 </span>    68/push  <span class="Constant">&quot;==&quot;</span>/imm32
 <span id="L254" class="LineNr"> 254 </span>    52/push-edx
 <span id="L255" class="LineNr"> 255 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L256" class="LineNr"> 256 </span>    e8/call  <a href='../072slice.subx.html#L91'>slice-equal?</a>/disp32
+<span id="L256" class="LineNr"> 256 </span>    e8/call  <a href='../072slice.subx.html#L120'>slice-equal?</a>/disp32
 <span id="L257" class="LineNr"> 257 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L258" class="LineNr"> 258 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L259" class="LineNr"> 259 </span>    <span class="subxS1Comment"># . if (eax == false) goto check3</span>
@@ -271,7 +271,7 @@ if ('onhashchange' in window) {
 <span id="L312" class="LineNr"> 312 </span>    68/push  <span class="Constant">&quot;code&quot;</span>/imm32
 <span id="L313" class="LineNr"> 313 </span>    52/push-edx
 <span id="L314" class="LineNr"> 314 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L315" class="LineNr"> 315 </span>    e8/call  <a href='../072slice.subx.html#L91'>slice-equal?</a>/disp32
+<span id="L315" class="LineNr"> 315 </span>    e8/call  <a href='../072slice.subx.html#L120'>slice-equal?</a>/disp32
 <span id="L316" class="LineNr"> 316 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L317" class="LineNr"> 317 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L318" class="LineNr"> 318 </span>    <span class="subxS2Comment"># . . in-code? = eax</span>
@@ -888,7 +888,7 @@ if ('onhashchange' in window) {
 <span id="L1043" class="LineNr">1043 </span>    51/push-ecx
 <span id="L1044" class="LineNr">1044 </span>    ff          6/subop/push        1/mod/*+disp8   5/rm32/ebp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
 <span id="L1045" class="LineNr">1045 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L1046" class="LineNr">1046 </span>    e8/call  <a href='../072slice.subx.html#L880'>write-slice-buffered</a>/disp32
+<span id="L1046" class="LineNr">1046 </span>    e8/call  <a href='../072slice.subx.html#L909'>write-slice-buffered</a>/disp32
 <span id="L1047" class="LineNr">1047 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1048" class="LineNr">1048 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L1049" class="LineNr">1049 </span>    <span class="subxComment"># return</span>
@@ -1823,7 +1823,7 @@ if ('onhashchange' in window) {
 <span id="L2053" class="LineNr">2053 </span>    51/push-ecx
 <span id="L2054" class="LineNr">2054 </span>    ff          6/subop/push        1/mod/*+disp8   5/rm32/ebp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
 <span id="L2055" class="LineNr">2055 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2056" class="LineNr">2056 </span>    e8/call  <a href='../072slice.subx.html#L880'>write-slice-buffered</a>/disp32
+<span id="L2056" class="LineNr">2056 </span>    e8/call  <a href='../072slice.subx.html#L909'>write-slice-buffered</a>/disp32
 <span id="L2057" class="LineNr">2057 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2058" class="LineNr">2058 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L2059" class="LineNr">2059 </span>    <span class="subxComment"># write-buffered(out, &quot; &quot;)</span>
@@ -1840,7 +1840,7 @@ if ('onhashchange' in window) {
 <span id="L2070" class="LineNr">2070 </span>    68/push  <span class="Constant">&quot;0f&quot;</span>/imm32
 <span id="L2071" class="LineNr">2071 </span>    51/push-ecx
 <span id="L2072" class="LineNr">2072 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2073" class="LineNr">2073 </span>    e8/call  <a href='../072slice.subx.html#L91'>slice-equal?</a>/disp32
+<span id="L2073" class="LineNr">2073 </span>    e8/call  <a href='../072slice.subx.html#L120'>slice-equal?</a>/disp32
 <span id="L2074" class="LineNr">2074 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2075" class="LineNr">2075 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L2076" class="LineNr">2076 </span>    <span class="subxS1Comment"># . if (eax != false) goto op2</span>
@@ -1852,7 +1852,7 @@ if ('onhashchange' in window) {
 <span id="L2082" class="LineNr">2082 </span>    68/push  <span class="Constant">&quot;f2&quot;</span>/imm32
 <span id="L2083" class="LineNr">2083 </span>    51/push-ecx
 <span id="L2084" class="LineNr">2084 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2085" class="LineNr">2085 </span>    e8/call  <a href='../072slice.subx.html#L91'>slice-equal?</a>/disp32
+<span id="L2085" class="LineNr">2085 </span>    e8/call  <a href='../072slice.subx.html#L120'>slice-equal?</a>/disp32
 <span id="L2086" class="LineNr">2086 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2087" class="LineNr">2087 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L2088" class="LineNr">2088 </span>    <span class="subxS1Comment"># . if (eax != false) goto op2</span>
@@ -1864,7 +1864,7 @@ if ('onhashchange' in window) {
 <span id="L2094" class="LineNr">2094 </span>    68/push  <span class="Constant">&quot;f3&quot;</span>/imm32
 <span id="L2095" class="LineNr">2095 </span>    51/push-ecx
 <span id="L2096" class="LineNr">2096 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2097" class="LineNr">2097 </span>    e8/call  <a href='../072slice.subx.html#L91'>slice-equal?</a>/disp32
+<span id="L2097" class="LineNr">2097 </span>    e8/call  <a href='../072slice.subx.html#L120'>slice-equal?</a>/disp32
 <span id="L2098" class="LineNr">2098 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2099" class="LineNr">2099 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L2100" class="LineNr">2100 </span>    <span class="subxS1Comment"># . if (eax != false) goto op2</span>
@@ -1916,7 +1916,7 @@ if ('onhashchange' in window) {
 <span id="L2146" class="LineNr">2146 </span>    52/push-edx
 <span id="L2147" class="LineNr">2147 </span>    ff          6/subop/push        1/mod/*+disp8   5/rm32/ebp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
 <span id="L2148" class="LineNr">2148 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2149" class="LineNr">2149 </span>    e8/call  <a href='../072slice.subx.html#L880'>write-slice-buffered</a>/disp32
+<span id="L2149" class="LineNr">2149 </span>    e8/call  <a href='../072slice.subx.html#L909'>write-slice-buffered</a>/disp32
 <span id="L2150" class="LineNr">2150 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2151" class="LineNr">2151 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L2152" class="LineNr">2152 </span>    <span class="subxComment"># write-buffered(out, &quot; &quot;)</span>
@@ -1933,7 +1933,7 @@ if ('onhashchange' in window) {
 <span id="L2163" class="LineNr">2163 </span>    68/push  <span class="Constant">&quot;0f&quot;</span>/imm32
 <span id="L2164" class="LineNr">2164 </span>    51/push-ecx
 <span id="L2165" class="LineNr">2165 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2166" class="LineNr">2166 </span>    e8/call  <a href='../072slice.subx.html#L91'>slice-equal?</a>/disp32
+<span id="L2166" class="LineNr">2166 </span>    e8/call  <a href='../072slice.subx.html#L120'>slice-equal?</a>/disp32
 <span id="L2167" class="LineNr">2167 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2168" class="LineNr">2168 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L2169" class="LineNr">2169 </span>    <span class="subxS1Comment"># . if (eax != false) return</span>
@@ -1945,7 +1945,7 @@ if ('onhashchange' in window) {
 <span id="L2175" class="LineNr">2175 </span>    68/push  <span class="Constant">&quot;0f&quot;</span>/imm32
 <span id="L2176" class="LineNr">2176 </span>    52/push-edx
 <span id="L2177" class="LineNr">2177 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2178" class="LineNr">2178 </span>    e8/call  <a href='../072slice.subx.html#L91'>slice-equal?</a>/disp32
+<span id="L2178" class="LineNr">2178 </span>    e8/call  <a href='../072slice.subx.html#L120'>slice-equal?</a>/disp32
 <span id="L2179" class="LineNr">2179 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2180" class="LineNr">2180 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L2181" class="LineNr">2181 </span>    <span class="subxS1Comment"># . if (eax == false) return</span>
@@ -1995,7 +1995,7 @@ if ('onhashchange' in window) {
 <span id="L2225" class="LineNr">2225 </span>    52/push-edx
 <span id="L2226" class="LineNr">2226 </span>    ff          6/subop/push        1/mod/*+disp8   5/rm32/ebp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
 <span id="L2227" class="LineNr">2227 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2228" class="LineNr">2228 </span>    e8/call  <a href='../072slice.subx.html#L880'>write-slice-buffered</a>/disp32
+<span id="L2228" class="LineNr">2228 </span>    e8/call  <a href='../072slice.subx.html#L909'>write-slice-buffered</a>/disp32
 <span id="L2229" class="LineNr">2229 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2230" class="LineNr">2230 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L2231" class="LineNr">2231 </span>    <span class="subxComment"># write-buffered(out, &quot; &quot;)</span>
diff --git a/html/apps/sigils.subx.html b/html/apps/sigils.subx.html
index 937f2bfc..5f87cf1e 100644
--- a/html/apps/sigils.subx.html
+++ b/html/apps/sigils.subx.html
@@ -351,7 +351,7 @@ if ('onhashchange' in window) {
 <span id="L328" class="LineNr"> 328 </span>    52/push-edx
 <span id="L329" class="LineNr"> 329 </span>    ff          6/subop/push        1/mod/*+disp8   5/rm32/ebp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
 <span id="L330" class="LineNr"> 330 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L331" class="LineNr"> 331 </span>    e8/call  <a href='../072slice.subx.html#L880'>write-slice-buffered</a>/disp32
+<span id="L331" class="LineNr"> 331 </span>    e8/call  <a href='../072slice.subx.html#L909'>write-slice-buffered</a>/disp32
 <span id="L332" class="LineNr"> 332 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L333" class="LineNr"> 333 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L334" class="LineNr"> 334 </span>    <span class="subxComment"># fall through</span>
@@ -3541,7 +3541,7 @@ if ('onhashchange' in window) {
 <span id="L3943" class="LineNr">3943 </span>    56/push-esi
 <span id="L3944" class="LineNr">3944 </span>    ff          6/subop/push        1/mod/*+disp8   5/rm32/ebp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>          8/disp8        <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+8)</span>
 <span id="L3945" class="LineNr">3945 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L3946" class="LineNr">3946 </span>    e8/call  <a href='../072slice.subx.html#L880'>write-slice-buffered</a>/disp32
+<span id="L3946" class="LineNr">3946 </span>    e8/call  <a href='../072slice.subx.html#L909'>write-slice-buffered</a>/disp32
 <span id="L3947" class="LineNr">3947 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3948" class="LineNr">3948 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L3949" class="LineNr">3949 </span>    <span class="subxComment"># write-buffered(out, &quot;/disp32&quot;)</span>
diff --git a/html/apps/survey.subx.html b/html/apps/survey.subx.html
index 0c669fd5..c778979d 100644
--- a/html/apps/survey.subx.html
+++ b/html/apps/survey.subx.html
@@ -566,7 +566,7 @@ if ('onhashchange' in window) {
 <span id="L840" class="LineNr"> 840 </span>    <span class="subxComment"># if slice-starts-with?(word-slice, &quot;#&quot;) continue</span>
 <span id="L841" class="LineNr"> 841 </span>    68/push  <span class="Constant">&quot;#&quot;</span>/imm32
 <span id="L842" class="LineNr"> 842 </span>    52/push-edx
-<span id="L843" class="LineNr"> 843 </span>    e8/call  <a href='../072slice.subx.html#L458'>slice-starts-with?</a>/disp32
+<span id="L843" class="LineNr"> 843 </span>    e8/call  <a href='../072slice.subx.html#L487'>slice-starts-with?</a>/disp32
 <span id="L844" class="LineNr"> 844 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L845" class="LineNr"> 845 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L846" class="LineNr"> 846 </span>    <span class="subxS1Comment"># . if (eax != false) break</span>
@@ -577,7 +577,7 @@ if ('onhashchange' in window) {
 <span id="L851" class="LineNr"> 851 </span>    <span class="subxS1Comment"># . eax = slice-equal?(word-slice/edx, &quot;==&quot;)</span>
 <span id="L852" class="LineNr"> 852 </span>    68/push  <span class="Constant">&quot;==&quot;</span>/imm32
 <span id="L853" class="LineNr"> 853 </span>    52/push-edx
-<span id="L854" class="LineNr"> 854 </span>    e8/call  <a href='../072slice.subx.html#L91'>slice-equal?</a>/disp32
+<span id="L854" class="LineNr"> 854 </span>    e8/call  <a href='../072slice.subx.html#L120'>slice-equal?</a>/disp32
 <span id="L855" class="LineNr"> 855 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L856" class="LineNr"> 856 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L857" class="LineNr"> 857 </span>    <span class="subxS1Comment"># . if (eax == false) goto next case</span>
@@ -634,7 +634,7 @@ if ('onhashchange' in window) {
 <span id="L952" class="LineNr"> 952 </span>    68/push  <a href='survey.subx.html#L621'>compute-offsets</a>:segment-tmp/imm32
 <span id="L953" class="LineNr"> 953 </span>    68/push  <span class="SpecialChar"><a href='../069allocate.subx.html#L22'>Heap</a></span>/imm32
 <span id="L954" class="LineNr"> 954 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L955" class="LineNr"> 955 </span>    e8/call  <a href='../072slice.subx.html#L1015'>slice-to-string</a>/disp32
+<span id="L955" class="LineNr"> 955 </span>    e8/call  <a href='../072slice.subx.html#L1044'>slice-to-string</a>/disp32
 <span id="L956" class="LineNr"> 956 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L957" class="LineNr"> 957 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L958" class="LineNr"> 958 </span>    <span class="subxS1Comment"># . curr-segment-name = eax</span>
@@ -1586,7 +1586,7 @@ if ('onhashchange' in window) {
 <span id="L2149" class="LineNr">2149 </span>    68/push  <span class="Constant">&quot;==&quot;</span>/imm32
 <span id="L2150" class="LineNr">2150 </span>    52/push-edx
 <span id="L2151" class="LineNr">2151 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2152" class="LineNr">2152 </span>    e8/call  <a href='../072slice.subx.html#L91'>slice-equal?</a>/disp32
+<span id="L2152" class="LineNr">2152 </span>    e8/call  <a href='../072slice.subx.html#L120'>slice-equal?</a>/disp32
 <span id="L2153" class="LineNr">2153 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2154" class="LineNr">2154 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L2155" class="LineNr">2155 </span>    <span class="subxS1Comment"># . if (eax != false) break</span>
@@ -1605,7 +1605,7 @@ if ('onhashchange' in window) {
 <span id="L2168" class="LineNr">2168 </span>    52/push-edx
 <span id="L2169" class="LineNr">2169 </span>    ff          6/subop/push        1/mod/*+disp8   5/rm32/ebp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
 <span id="L2170" class="LineNr">2170 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2171" class="LineNr">2171 </span>    e8/call  <a href='../072slice.subx.html#L880'>write-slice-buffered</a>/disp32
+<span id="L2171" class="LineNr">2171 </span>    e8/call  <a href='../072slice.subx.html#L909'>write-slice-buffered</a>/disp32
 <span id="L2172" class="LineNr">2172 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2173" class="LineNr">2173 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L2174" class="LineNr">2174 </span>    <span class="subxComment"># write-buffered(out, &quot; &quot;)</span>
@@ -1860,7 +1860,7 @@ if ('onhashchange' in window) {
 <span id="L2512" class="LineNr">2512 </span>    52/push-edx
 <span id="L2513" class="LineNr">2513 </span>    68/push  <span class="SpecialChar"><a href='../065write-buffered.subx.html#L209'>Stderr</a></span>/imm32
 <span id="L2514" class="LineNr">2514 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2515" class="LineNr">2515 </span>    e8/call  <a href='../072slice.subx.html#L880'>write-slice-buffered</a>/disp32
+<span id="L2515" class="LineNr">2515 </span>    e8/call  <a href='../072slice.subx.html#L909'>write-slice-buffered</a>/disp32
 <span id="L2516" class="LineNr">2516 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2517" class="LineNr">2517 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L2518" class="LineNr">2518 </span>    <span class="subxS1Comment"># . flush(Stderr)</span>
@@ -2909,7 +2909,7 @@ if ('onhashchange' in window) {
 <span id="L3785" class="LineNr">3785 </span>    ff          6/subop/push        1/mod/*+disp8   5/rm32/ebp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
 <span id="L3786" class="LineNr">3786 </span>    ff          6/subop/push        0/mod/indirect  5/rm32/.disp32           <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>          <span class="SpecialChar"><a href='../056trace.subx.html#L21'>Trace-stream</a></span>/disp32               <span class="subxComment"># push *Trace-stream</span>
 <span id="L3787" class="LineNr">3787 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L3788" class="LineNr">3788 </span>    e8/call  <a href='../072slice.subx.html#L764'>write-slice</a>/disp32
+<span id="L3788" class="LineNr">3788 </span>    e8/call  <a href='../072slice.subx.html#L793'>write-slice</a>/disp32
 <span id="L3789" class="LineNr">3789 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3790" class="LineNr">3790 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L3791" class="LineNr">3791 </span>    <span class="subxComment"># write(*Trace-stream, s3)</span>
@@ -2925,7 +2925,7 @@ if ('onhashchange' in window) {
 <span id="L3801" class="LineNr">3801 </span>    ff          6/subop/push        1/mod/*+disp8   5/rm32/ebp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>          0x14/disp8     <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+20)</span>
 <span id="L3802" class="LineNr">3802 </span>    ff          6/subop/push        0/mod/indirect  5/rm32/.disp32           <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>          <span class="SpecialChar"><a href='../056trace.subx.html#L21'>Trace-stream</a></span>/disp32               <span class="subxComment"># push *Trace-stream</span>
 <span id="L3803" class="LineNr">3803 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L3804" class="LineNr">3804 </span>    e8/call  <a href='../072slice.subx.html#L764'>write-slice</a>/disp32
+<span id="L3804" class="LineNr">3804 </span>    e8/call  <a href='../072slice.subx.html#L793'>write-slice</a>/disp32
 <span id="L3805" class="LineNr">3805 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3806" class="LineNr">3806 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L3807" class="LineNr">3807 </span>    <span class="subxComment"># trace(s5)  # implicitly adds a newline and finalizes the trace line</span>
@@ -3009,7 +3009,7 @@ if ('onhashchange' in window) {
 <span id="L3910" class="LineNr">3910 </span>    ff          6/subop/push        1/mod/*+disp8   5/rm32/ebp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
 <span id="L3911" class="LineNr">3911 </span>    ff          6/subop/push        0/mod/indirect  5/rm32/.disp32           <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>          <span class="SpecialChar"><a href='../056trace.subx.html#L21'>Trace-stream</a></span>/disp32               <span class="subxComment"># push *Trace-stream</span>
 <span id="L3912" class="LineNr">3912 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L3913" class="LineNr">3913 </span>    e8/call  <a href='../072slice.subx.html#L764'>write-slice</a>/disp32
+<span id="L3913" class="LineNr">3913 </span>    e8/call  <a href='../072slice.subx.html#L793'>write-slice</a>/disp32
 <span id="L3914" class="LineNr">3914 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3915" class="LineNr">3915 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L3916" class="LineNr">3916 </span>    <span class="subxComment"># write(*Trace-stream, s3)</span>
@@ -3100,7 +3100,7 @@ if ('onhashchange' in window) {
 <span id="L4026" class="LineNr">4026 </span>    ff          6/subop/push        1/mod/*+disp8   5/rm32/ebp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
 <span id="L4027" class="LineNr">4027 </span>    ff          6/subop/push        0/mod/indirect  5/rm32/.disp32           <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>          <span class="SpecialChar"><a href='../056trace.subx.html#L21'>Trace-stream</a></span>/disp32               <span class="subxComment"># push *Trace-stream</span>
 <span id="L4028" class="LineNr">4028 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L4029" class="LineNr">4029 </span>    e8/call  <a href='../072slice.subx.html#L764'>write-slice</a>/disp32
+<span id="L4029" class="LineNr">4029 </span>    e8/call  <a href='../072slice.subx.html#L793'>write-slice</a>/disp32
 <span id="L4030" class="LineNr">4030 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L4031" class="LineNr">4031 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L4032" class="LineNr">4032 </span>    <span class="subxComment"># write(*Trace-stream, s3)</span>
@@ -3266,7 +3266,7 @@ if ('onhashchange' in window) {
 <span id="L4281" class="LineNr">4281 </span>    68/push  <span class="Constant">&quot;==&quot;</span>/imm32
 <span id="L4282" class="LineNr">4282 </span>    51/push-ecx
 <span id="L4283" class="LineNr">4283 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L4284" class="LineNr">4284 </span>    e8/call  <a href='../072slice.subx.html#L91'>slice-equal?</a>/disp32
+<span id="L4284" class="LineNr">4284 </span>    e8/call  <a href='../072slice.subx.html#L120'>slice-equal?</a>/disp32
 <span id="L4285" class="LineNr">4285 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L4286" class="LineNr">4286 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L4287" class="LineNr">4287 </span>    <span class="subxS1Comment"># . if (eax != false) break</span>
diff --git a/html/apps/tests.subx.html b/html/apps/tests.subx.html
index cc20676e..8e31cc81 100644
--- a/html/apps/tests.subx.html
+++ b/html/apps/tests.subx.html
@@ -249,7 +249,7 @@ if ('onhashchange' in window) {
 <span id="L189" class="LineNr">189 </span>    68/push  <span class="Constant">&quot;test-&quot;</span>/imm32
 <span id="L190" class="LineNr">190 </span>    52/push-edx
 <span id="L191" class="LineNr">191 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L192" class="LineNr">192 </span>    e8/call  <a href='../072slice.subx.html#L458'>slice-starts-with?</a>/disp32
+<span id="L192" class="LineNr">192 </span>    e8/call  <a href='../072slice.subx.html#L487'>slice-starts-with?</a>/disp32
 <span id="L193" class="LineNr">193 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L194" class="LineNr">194 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L195" class="LineNr">195 </span>    <span class="subxS1Comment"># . if (eax == false) break</span>
@@ -271,7 +271,7 @@ if ('onhashchange' in window) {
 <span id="L211" class="LineNr">211 </span>    52/push-edx
 <span id="L212" class="LineNr">212 </span>    57/push-edi
 <span id="L213" class="LineNr">213 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L214" class="LineNr">214 </span>    e8/call  <a href='../072slice.subx.html#L764'>write-slice</a>/disp32
+<span id="L214" class="LineNr">214 </span>    e8/call  <a href='../072slice.subx.html#L793'>write-slice</a>/disp32
 <span id="L215" class="LineNr">215 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L216" class="LineNr">216 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L217" class="LineNr">217 </span>    <span class="subxComment"># write(new-code-segment, &quot;/disp32\n&quot;)</span>