Thank you. Very helpful.

I was confused where the value was actually being stored. I was thinking
that in my example it was being stored in the cell in the index. Then, I
couldn't figure out how it retained it's value after I cleared out the
index.

Turns out that it actually stored it back on the original symbol that held
the customer number string.

I'm fairly clear now on it. Definitely an interesting deep dive


On Sun, Jun 3, 2012 at 4:23 AM, Alexander Burger <a...@software-lab.de>wrote:

> On Sat, Jun 02, 2012 at 06:10:05PM -0400, Joe Bogner wrote:
> > To be more clear, this is the call pattern that I'm referring to:
> >
> > : (for X (idx 'A) (set (car (idx 'A X)) 0)) (Sum)
> > ...
> > As you can see, clearing it before calling Sum gives the correct results.
>
> OK, so this makes sense (also the assumption in my last mail about the
> idx values). You clear the values of the payload items.
>
>
> Note that 'X' in the above loop already contains the payload items
> (symbols or cells). So looking them up again is not necessary. You can
> write
>
>   (for X (idx 'A) (set X 0))
>
>
> A second note: (idx 'A) collects all items in the _whole_ index tree
> into a list. This makes sense only for small trees, of course, and is
> not used often in production code.
>
> Cheers,
> - Alex
> --
> UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
>

Reply via email to