diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2016-09-27 09:24:36 -0700 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2016-09-27 09:24:36 -0700 |
commit | 5cf4bb1d95e22a46ded620e6d40cdbb14bfb1a28 (patch) | |
tree | 8861878ddbb40b0ad7b5b647291a7d4aae4386d1 /html/064list.mu.html | |
parent | e5f9c6aed046e278f3072fcfe94485ad314d58c2 (diff) | |
download | mu-5cf4bb1d95e22a46ded620e6d40cdbb14bfb1a28.tar.gz |
3420
Diffstat (limited to 'html/064list.mu.html')
-rw-r--r-- | html/064list.mu.html | 28 |
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:&:list:_elem temp:&:list:_elem<span class="muRecipe"> -> </span>result:&: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"> <- </span>first, list + list<span class="Special"> <- </span>rest list + temp<span class="Special"> <- </span>push object, temp + result<span class="Special"> <- </span>reverse list, temp +] + +<span class="muScenario">scenario</span> reverse-list [ + run [ + <span class="Constant">local-scope</span> + list:&:list:number<span class="Special"> <- </span>push <span class="Constant">1</span>, <span class="Constant">0</span> + list<span class="Special"> <- </span>push <span class="Constant">2</span>, list + list<span class="Special"> <- </span>push <span class="Constant">3</span>, list + stash <span class="Constant">[list:]</span>, list + list<span class="Special"> <- </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"> -> </span><span class="Constant">2</span><span class="muRecipe"> -> </span><span class="Constant">1</span> + app: reversed: <span class="Constant">1</span><span class="muRecipe"> -> </span><span class="Constant">2</span><span class="muRecipe"> -> </span><span class="Constant">3</span> + ] +] + <span class="muRecipe">def</span> to-text in:&:list:_elem<span class="muRecipe"> -> </span>result:text [ <span class="Constant">local-scope</span> <span class="Constant">load-ingredients</span> |