about summary refs log tree commit diff stats
path: root/html/064list.mu.html
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2016-09-27 09:24:36 -0700
committerKartik K. Agaram <vc@akkartik.com>2016-09-27 09:24:36 -0700
commit5cf4bb1d95e22a46ded620e6d40cdbb14bfb1a28 (patch)
tree8861878ddbb40b0ad7b5b647291a7d4aae4386d1 /html/064list.mu.html
parente5f9c6aed046e278f3072fcfe94485ad314d58c2 (diff)
downloadmu-5cf4bb1d95e22a46ded620e6d40cdbb14bfb1a28.tar.gz
3420
Diffstat (limited to 'html/064list.mu.html')
-rw-r--r--html/064list.mu.html28
1 files changed, 28 insertions, 0 deletions
diff --git a/html/064list.mu.html b/html/064list.mu.html
index b9e0e18d..236bf533 100644
--- a/html/064list.mu.html
+++ b/html/064list.mu.html
@@ -292,6 +292,34 @@ body { font-size: 12pt; font-family: monospace; color: #eeeeee; background-color
   ]
 ]
 
+<span class="Comment"># reverse the elements of a list</span>
+<span class="Comment"># (contributed by Caleb Couch)</span>
+<span class="muRecipe">def</span> reverse list:&amp;:list:_elem temp:&amp;:list:_elem<span class="muRecipe"> -&gt; </span>result:&amp;:list:_elem [
+  <span class="Constant">local-scope</span>
+  <span class="Constant">load-ingredients</span>
+  <span class="muControl">reply-unless</span> list, temp
+  object:_elem<span class="Special"> &lt;- </span>first, list
+  list<span class="Special"> &lt;- </span>rest list
+  temp<span class="Special"> &lt;- </span>push object, temp
+  result<span class="Special"> &lt;- </span>reverse list, temp
+]
+
+<span class="muScenario">scenario</span> reverse-list [
+  run [
+    <span class="Constant">local-scope</span>
+    list:&amp;:list:number<span class="Special"> &lt;- </span>push <span class="Constant">1</span>, <span class="Constant">0</span>
+    list<span class="Special"> &lt;- </span>push <span class="Constant">2</span>, list
+    list<span class="Special"> &lt;- </span>push <span class="Constant">3</span>, list
+    stash <span class="Constant">[list:]</span>, list
+    list<span class="Special"> &lt;- </span>reverse list, <span class="Constant">0</span>
+    stash <span class="Constant">[reversed:]</span>, list
+  ]
+  trace-should-contain [
+    app: list: <span class="Constant">3</span><span class="muRecipe"> -&gt; </span><span class="Constant">2</span><span class="muRecipe"> -&gt; </span><span class="Constant">1</span>
+    app: reversed: <span class="Constant">1</span><span class="muRecipe"> -&gt; </span><span class="Constant">2</span><span class="muRecipe"> -&gt; </span><span class="Constant">3</span>
+  ]
+]
+
 <span class="muRecipe">def</span> to-text in:&amp;:list:_elem<span class="muRecipe"> -&gt; </span>result:text [
   <span class="Constant">local-scope</span>
   <span class="Constant">load-ingredients</span>