diff options
-rw-r--r-- | apps/mu.subx | 12 | ||||
-rw-r--r-- | html/apps/mu.subx.html | 12 |
2 files changed, 12 insertions, 12 deletions
diff --git a/apps/mu.subx b/apps/mu.subx index 481ed0e7..adf5234a 100644 --- a/apps/mu.subx +++ b/apps/mu.subx @@ -1,4 +1,4 @@ -# Mu's level-2 language, also called Mu. +# The Mu computer's level-2 language, also called Mu. # http://akkartik.name/post/mu-2019-2 # # To run: @@ -80,7 +80,7 @@ Entry: # if (argc <= 1) break 81 7/subop/compare *ebp 1/imm32 7e/jump-if-lesser-or-equal break/disp8 - # if (argv[1] != "test")) break + # if (argv[1] != "test") break (kernel-string-equal? *(ebp+8) "test") # => eax 3d/compare-eax-and 0/imm32 74/jump-if-equal break/disp8 @@ -306,7 +306,7 @@ $parse-mu:line-loop: { # word loop $parse-mu:word-loop: (next-word-or-string %ecx %edx) - # if (slice-empty?(word-slice)) break + # if slice-empty?(word-slice) break (slice-empty? %edx) 3d/compare-eax-and 0/imm32 0f 85/jump-if-not-equal break/disp32 @@ -318,7 +318,7 @@ $parse-mu:word-loop: # . if (eax == '#') break 3d/compare-eax-and 0x23/imm32/hash 0f 84/jump-if-equal break/disp32 - # if slice-equal?(word-slice, "fn") + # if (slice-equal?(word-slice, "fn")) parse a function { (slice-equal? %edx "fn") 3d/compare-eax-and 0/imm32 @@ -471,7 +471,7 @@ $populate-mu-function-body:line-loop: 0f 84/jump-if-equal break/disp32 # word-slice = next-word(line) (next-word %ecx %edx) - # if slice-empty?(word-slice)) continue + # if slice-empty?(word-slice) continue (slice-empty? %ecx) 3d/compare-eax-and 0/imm32 75/jump-if-not-equal loop/disp8 @@ -507,7 +507,7 @@ $populate-mu-function-body:line-loop: $curly-found:end: # second-word-slice = next-word(line) (next-word %ecx %edx) - # if slice-empty?(second-word-slice)) continue + # if slice-empty?(second-word-slice) continue (slice-empty? %ecx) 3d/compare-eax-and 0/imm32 0f 85/jump-if-not-equal loop/disp32 diff --git a/html/apps/mu.subx.html b/html/apps/mu.subx.html index 9ba938aa..a1500a8a 100644 --- a/html/apps/mu.subx.html +++ b/html/apps/mu.subx.html @@ -58,7 +58,7 @@ if ('onhashchange' in window) { <body onload='JumpToLine();'> <a href='https://github.com/akkartik/mu/blob/master/apps/mu.subx'>https://github.com/akkartik/mu/blob/master/apps/mu.subx</a> <pre id='vimCodeElement'> -<span id="L1" class="LineNr"> 1 </span><span class="subxComment"># Mu's level-2 language, also called Mu.</span> +<span id="L1" class="LineNr"> 1 </span><span class="subxComment"># The Mu computer's level-2 language, also called Mu.</span> <span id="L2" class="LineNr"> 2 </span><span class="subxComment"># <a href="http://akkartik.name/post/mu-2019-2">http://akkartik.name/post/mu-2019-2</a></span> <span id="L3" class="LineNr"> 3 </span><span class="subxComment">#</span> <span id="L4" class="LineNr"> 4 </span><span class="subxComment"># To run:</span> @@ -140,7 +140,7 @@ if ('onhashchange' in window) { <span id="L80" class="LineNr"> 80 </span> <span class="subxComment"># if (argc <= 1) break</span> <span id="L81" class="LineNr"> 81 </span> 81 7/subop/compare *ebp 1/imm32 <span id="L82" class="LineNr"> 82 </span> 7e/jump-if-lesser-or-equal <span class="Constant">break</span>/disp8 -<span id="L83" class="LineNr"> 83 </span> <span class="subxComment"># if (argv[1] != "test")) break</span> +<span id="L83" class="LineNr"> 83 </span> <span class="subxComment"># if (argv[1] != "test") break</span> <span id="L84" class="LineNr"> 84 </span> (<a href='../052kernel-string-equal.subx.html#L31'>kernel-string-equal?</a> *(ebp+8) <span class="Constant">"test"</span>) <span class="subxComment"># => eax</span> <span id="L85" class="LineNr"> 85 </span> 3d/compare-eax-and 0/imm32 <span id="L86" class="LineNr"> 86 </span> 74/jump-if-equal <span class="Constant">break</span>/disp8 @@ -351,7 +351,7 @@ if ('onhashchange' in window) { <span id="L306" class="LineNr">306 </span> { <span class="subxComment"># word loop</span> <span id="L307" class="LineNr">307 </span><span class="Constant">$parse-mu:word-loop</span>: <span id="L308" class="LineNr">308 </span> (<a href='../094next-word-or-string.subx.html#L8'>next-word-or-string</a> %ecx %edx) -<span id="L309" class="LineNr">309 </span> <span class="subxComment"># if (slice-empty?(word-slice)) break</span> +<span id="L309" class="LineNr">309 </span> <span class="subxComment"># if slice-empty?(word-slice) break</span> <span id="L310" class="LineNr">310 </span> (<a href='../072slice.subx.html#L9'>slice-empty?</a> %edx) <span id="L311" class="LineNr">311 </span> 3d/compare-eax-and 0/imm32 <span id="L312" class="LineNr">312 </span> 0f 85/jump-if-not-equal <span class="Constant">break</span>/disp32 @@ -363,7 +363,7 @@ if ('onhashchange' in window) { <span id="L318" class="LineNr">318 </span> <span class="subxS1Comment"># . if (eax == '#') break</span> <span id="L319" class="LineNr">319 </span> 3d/compare-eax-and 0x23/imm32/hash <span id="L320" class="LineNr">320 </span> 0f 84/jump-if-equal <span class="Constant">break</span>/disp32 -<span id="L321" class="LineNr">321 </span> <span class="subxComment"># if slice-equal?(word-slice, "fn")</span> +<span id="L321" class="LineNr">321 </span> <span class="subxComment"># if (slice-equal?(word-slice, "fn")) parse a function</span> <span id="L322" class="LineNr">322 </span> { <span id="L323" class="LineNr">323 </span> (<a href='../072slice.subx.html#L91'>slice-equal?</a> %edx <span class="Constant">"fn"</span>) <span id="L324" class="LineNr">324 </span> 3d/compare-eax-and 0/imm32 @@ -516,7 +516,7 @@ if ('onhashchange' in window) { <span id="L471" class="LineNr">471 </span> 0f 84/jump-if-equal <span class="Constant">break</span>/disp32 <span id="L472" class="LineNr">472 </span> <span class="subxComment"># word-slice = next-word(line)</span> <span id="L473" class="LineNr">473 </span> (<a href='../076next-word.subx.html#L10'>next-word</a> %ecx %edx) -<span id="L474" class="LineNr">474 </span> <span class="subxComment"># if slice-empty?(word-slice)) continue</span> +<span id="L474" class="LineNr">474 </span> <span class="subxComment"># if slice-empty?(word-slice) continue</span> <span id="L475" class="LineNr">475 </span> (<a href='../072slice.subx.html#L9'>slice-empty?</a> %ecx) <span id="L476" class="LineNr">476 </span> 3d/compare-eax-and 0/imm32 <span id="L477" class="LineNr">477 </span> 75/jump-if-not-equal <span class="Constant">loop</span>/disp8 @@ -552,7 +552,7 @@ if ('onhashchange' in window) { <span id="L507" class="LineNr">507 </span><span class="Constant">$curly-found:end</span>: <span id="L508" class="LineNr">508 </span> <span class="subxComment"># second-word-slice = next-word(line)</span> <span id="L509" class="LineNr">509 </span> (<a href='../076next-word.subx.html#L10'>next-word</a> %ecx %edx) -<span id="L510" class="LineNr">510 </span> <span class="subxComment"># if slice-empty?(second-word-slice)) continue</span> +<span id="L510" class="LineNr">510 </span> <span class="subxComment"># if slice-empty?(second-word-slice) continue</span> <span id="L511" class="LineNr">511 </span> (<a href='../072slice.subx.html#L9'>slice-empty?</a> %ecx) <span id="L512" class="LineNr">512 </span> 3d/compare-eax-and 0/imm32 <span id="L513" class="LineNr">513 </span> 0f 85/jump-if-not-equal <span class="Constant">loop</span>/disp32 |