#528: Improve Tail Call Elimination
-------------------------------------+--------------------------------------
 Reporter:  haruki.zae...@…          |       Owner:  lsansone...@…              
           
     Type:  enhancement              |      Status:  new                        
           
 Priority:  minor                    |   Milestone:                             
           
Component:  MacRuby                  |    Keywords:  tail call elimination 
optimisation tco
-------------------------------------+--------------------------------------

Comment(by conra...@…):

 Replying to [comment:3 haruki.zae...@…]:
 > > In regards to writing recursive methods, one would usually use
 memoization technique(s) in conjunction with recursion to eliminate
 wasteful calls.
 >
 > I'm not worried about wasteful calls. Recursively descending through a
 large data structure is the problem.
 >

 If you need tail call optimization, then you're definitely concerned about
 the wasteful calls because the goal of tail call optimization is to
 transform
 recursive alogithm into iterative algorithm.  Thus, reducing the overall
 stack space used and approve the efficiency of the running algorithm.
 Memoization
 is a manual way of achieving this that greatly decreases stack frame usage
 but I guess that you're looking for something  automatically done with
 MacRuby
 VM.

 > > Also, all core data structures or containers within Ruby Programming
 Language provide mechanisms for easily iterating through their contents.
 >
 > Perhaps the example was misleading, these are custom application data
 structures with thousands of nodes.

 Yes, there could be thousands of nodes within your custom application data
 structure but it's still your requirement to implement the appropriate
 traversal algorithm for the data set that you're operating on.  In short,
 one should use the best algorithm for the job and not rely so heavily on
 what's
 happening within the language's internals.

-- 
Ticket URL: <http://www.macruby.org/trac/ticket/528#comment:7>
MacRuby <http://macruby.org/>

_______________________________________________
MacRuby-devel mailing list
MacRuby-devel@lists.macosforge.org
http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel

Reply via email to