Changes between Version 1 and Version 2 of Ticket #1236


Ignore:
Timestamp:
12/22/15 15:40:42 (7 years ago)
Author:
sjamaan
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #1236 – Description

    v1 v2  
    2929You'll see this blows up after only 16 or so iterations.  I had to up the list nesting to 1000 because 100 only seems to crash once every blue moon.
    3030
    31 A fix could involve dynamically allocating (with {{{malloc}}} or so) a "working list" stack and use that to convert the recursion to a loop.  Alternatively, we could "de-inline" it so it can reclaim memory.  On the plus side, this allows us to convert it to Scheme and taking the CPS hit.
     31A fix could involve dynamically allocating (with {{{malloc}}} or so) a "working list" stack and use that to convert the recursion to a loop.  Alternatively, we could "de-inline" it so it can reclaim memory.  On the plus side, this allows us to convert it to Scheme.  On the downside, we'd be taking a CPS hit.
    3232
    3333Originally I thought it might be possible to use the scratch space in CHICKEN 5, but I'm not sure that's suitable in this case because there's nothing in the heap or nursery that points directly to it.  We could create one and make an actual Scheme list of "todo" objects, but it would be such a long chain that it would become pretty slow I think.