about summary refs log tree commit diff stats
path: root/index.html
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2016-03-26 23:59:59 -0700
committerKartik K. Agaram <vc@akkartik.com>2016-03-27 17:43:41 -0700
commita654e4ecace2d506d1b10f1dde2c287ebe84ef37 (patch)
tree1e34a3ad99a56e32bdf9ee03ecfe7d339e7942ae /index.html
parent859f35fbe2f6a78157b875e12eb7dc8cd95c1152 (diff)
downloadmu-a654e4ecace2d506d1b10f1dde2c287ebe84ef37.tar.gz
2812
Diffstat (limited to 'index.html')
-rw-r--r--index.html36
1 files changed, 22 insertions, 14 deletions
diff --git a/index.html b/index.html
index e4909263..66788595 100644
--- a/index.html
+++ b/index.html
@@ -93,12 +93,13 @@ and <a href='html/025compare.cc.html'>comparing values</a>.
 operations to help with testing and debugging.
 
 <p/><a href='html/030container.cc.html'>030container.cc</a>: Mu supports
-compound types akin to records, structs or classes.
+compound types called<em>containers</em> akin to records, structs or classes.
 <br/><a href='html/031address.cc.html'>031address.cc</a>: adding and removing
 layers of indirection to Mu data.
 <br/><a href='html/032array.cc.html'>032array.cc</a>: all Mu data structures
 are bounds-checked.
-<br/><a href='html/033exclusive_container.cc.html'>033exclusive_container.cc</a>: tagged unions or sum types.
+<br/><a href='html/033exclusive_container.cc.html'>033exclusive_container.cc</a>:
+tagged unions or sum types.
 <br/><a href='html/034call.cc.html'>034call.cc</a>: calls to recipes look
 just like primitive operations.
 <br/><a href='html/035call_ingredient.cc.html'>035call_ingredient.cc</a>: how
@@ -145,16 +146,16 @@ previous instructions in the same recipe.
 <br/><a href='html/052tangle.cc.html'>052tangle.cc</a>: support for layers in
 Mu programs. They've been so good to us.
 <br/>Support for <em>shape-shifting</em> or generic data structures that can
-contain <em>type ingredients</em>: <a href='html/054dilated_reagent.cc.html'>054dilated_reagent.cc</a>,
-a new syntax for allowing whitespace in types; <a href='html/055parse_tree.cc.html'>055parse_tree.cc</a>,
+contain <em>type ingredients</em>: <a href='html/053dilated_reagent.cc.html'>053dilated_reagent.cc</a>,
+a new syntax for allowing whitespace in types; <a href='html/054parse_tree.cc.html'>054parse_tree.cc</a>,
 a new syntax for representing complex types as trees using whitespace and
-parentheses (s-expressions); <a href='html/056recipe_header.cc.html'>056recipe_header.cc</a>,
+parentheses (s-expressions); <a href='html/055recipe_header.cc.html'>055recipe_header.cc</a>,
 a new syntax for introducing ingredients and products with the name of a reagent;
-<a href='html/057static_dispatch.cc.html'>057static_dispatch.cc</a>, allowing
+<a href='html/056static_dispatch.cc.html'>056static_dispatch.cc</a>, allowing
 multiple variants of a recipe to coexist with support for different headers;
-<a href='html/058shape_shifting_container.cc.html'>058shape_shifting_container.cc</a>, 
+<a href='html/057shape_shifting_container.cc.html'>057shape_shifting_container.cc</a>, 
 a new syntax for wildcard <em>type ingredients</em> in containers; and finally
-<a href='html/059shape_shifting_recipe.cc.html'>059shape_shifting_recipe.cc</a>, 
+<a href='html/058shape_shifting_recipe.cc.html'>058shape_shifting_recipe.cc</a>, 
 support for type ingredients in recipes. Everytime you call a shape-shifting
 recipe with a new set of types for its type ingredients, it creates a
 new variant of the recipe for you matching those types.
@@ -173,17 +174,24 @@ use in previous layers.
 <p/><a href='html/070text.mu.html'>070text.mu</a>: strings in Mu are
 bounds-checked rather than null-terminated. They're also unicode-aware (code
 points only; no control characters, no combining characters, no normalization).
-<br/><a href='html/071channel.mu.html'>071channel.mu</a>: channels are Mu's
+<br/><a href='html/071rewrite_stash.cc.html'>071rewrite_stash.cc</a>: a
+convenience when debugging is the ability to add variables to the trace using
+the <span style='font-family:courier,fixed'>stash</span> command. By default
+<span style='font-family:courier,fixed'>stash</span> just prints out the
+locations in memory, one by one. To extend its display format specific types,
+define a function called <span style='font-family:courier,fixed'>to-text</span>
+with the appropriate ingredient type, returning a Mu string.
+<br/><a href='html/072channel.mu.html'>072channel.mu</a>: channels are Mu's
 only synchronization primitive, queues that can cause the routine reading or
 writing from them to stall without taking up CPU resources.
-<br/><a href='html/072array.mu.html'>072array.mu</a>
-<br/><a href='html/073list.mu.html'>073list.mu</a>: linked lists where each
+<br/><a href='html/073array.mu.html'>073array.mu</a>
+<br/><a href='html/074list.mu.html'>074list.mu</a>: linked lists where each
 node points to the next, permitting fast insertion/deletion but slow for
 search.
-<br/><a href='html/074random.cc.html'>074random.cc</a>
-<br/><a href='html/075duplex_list.mu.html'>075duplex_list.mu</a>: doubly
+<br/><a href='html/075random.cc.html'>075random.cc</a>
+<br/><a href='html/076duplex_list.mu.html'>076duplex_list.mu</a>: doubly
 linked lists that can be traversed both forwards and back.
-<br/><a href='html/076stream.mu.html'>076stream.mu</a>: data structure to
+<br/><a href='html/077stream.mu.html'>077stream.mu</a>: data structure to
 efficiently append strings.
 
 <p><b>Part V</b>: Nascent tools for browsing Mu codebases, and for teaching