about summary refs log tree commit diff stats
path: root/mu.arc.t.html
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2015-01-09 00:59:13 -0800
committerKartik K. Agaram <vc@akkartik.com>2015-01-09 01:00:36 -0800
commit6612b390e7c5462eb233a00eb073d09f45e438f6 (patch)
tree009f9f4c386f307e3f0da09c6448c5b28f09f417 /mu.arc.t.html
parentb5018f8315948aee69a08e8c364321819ff9b2bf (diff)
downloadmu-6612b390e7c5462eb233a00eb073d09f45e438f6.tar.gz
514
Diffstat (limited to 'mu.arc.t.html')
-rw-r--r--mu.arc.t.html32
1 files changed, 17 insertions, 15 deletions
diff --git a/mu.arc.t.html b/mu.arc.t.html
index 943742c0..dd641472 100644
--- a/mu.arc.t.html
+++ b/mu.arc.t.html
@@ -166,25 +166,27 @@ a { color:#4444ff; }
 <span class="Comment">; of them.</span>
 <span class="Comment">;</span>
 <span class="Comment">; Since we're building on lisp, our code samples won't look quite like the</span>
-<span class="Comment">; idealized syntax above. For now they will be lists of lists:</span>
+<span class="Comment">; idealized syntax above. For now they will look like this:</span>
 <span class="Comment">;</span>
-<span class="Comment">;   (function-name</span>
-<span class="Comment">;     ((oarg1 oarg2 ... <span class="Op">&lt;-</span> op arg1 arg2 ...)</span>
-<span class="Comment">;      ...</span>
-<span class="Comment">;      ...))</span>
+<span class="Comment">;   (function f [</span>
+<span class="Comment">;     (oarg1 oarg2 ... <span class="Op">&lt;-</span> op arg1 arg2 ...)</span>
+<span class="Comment">;     ...</span>
+<span class="Comment">;     ...</span>
+<span class="Comment">;    ])</span>
 <span class="Comment">;</span>
-<span class="Comment">; Each arg/oarg is itself a list, with the payload value at the head, and</span>
-<span class="Comment">; various metadata in the rest. In this first example the only metadata is types:</span>
-<span class="Comment">; 'integer' for a memory location containing an integer, and 'literal' for a</span>
-<span class="Comment">; value included directly in code. (Assembly languages traditionally call them</span>
-<span class="Comment">; 'immediate' operands.) In the future a simple tool will check that the types</span>
-<span class="Comment">; line up as expected in each op. A different tool might add types where they</span>
-<span class="Comment">; aren't provided. Instead of a monolithic compiler I want to build simple,</span>
-<span class="Comment">; lightweight tools that can be combined in various ways, say for using</span>
-<span class="Comment">; different typecheckers in different subsystems.</span>
+<span class="Comment">; Each arg/oarg can contain metadata separated by slashes and colons. In this</span>
+<span class="Comment">; first example below, the only metadata is types: 'integer' for a memory</span>
+<span class="Comment">; location containing an integer, and 'literal' for a value included directly</span>
+<span class="Comment">; in code. (Assembly languages traditionally call them 'immediate' operands.)</span>
+<span class="Comment">; In the future a simple tool will check that the types line up as expected in</span>
+<span class="Comment">; each op. A different tool might add types where they aren't provided.</span>
+<span class="Comment">; Instead of a monolithic compiler I want to build simple, lightweight tools</span>
+<span class="Comment">; that can be combined in various ways, say for using different typecheckers</span>
+<span class="Comment">; in different subsystems.</span>
 <span class="Comment">;</span>
 <span class="Comment">; In our tests we'll define such mu functions using a call to 'add-code', so</span>
-<span class="Comment">; look for it. Everything outside 'add-code' is just test-harness details.</span>
+<span class="Comment">; look for it when reading the code examples. Everything outside 'add-code' is</span>
+<span class="Comment">; just test-harness details that can be skipped at first.</span>
 
 <span class="Delimiter">(</span>reset<span class="Delimiter">)</span>
 <span class="CommentedCode">;? (set dump-trace*)</span>