diff options
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> |