Hi Jason,

> picoLisp does a great job in a few lines of code at parsing
> the output of 'aapk' and 'apkanalyzer' into a LARGE
> database:

I think the size may decrease significantly if you change the data model to what
I proposed in my last mail. +Idx does not work for numbers, and is normally not
necessary unless you want tolerant searches, but it takes up lots of space due
to the multiple entries per key.


> It seems, if somthing fails within a piLog '(solve ...) query, then the
> database becomes unusable , then '(db ..) and '(collect ...) statements
> that succeeded before start failing,  and I have to exit the process
> and re-initialize.

This is really strange! I can assure you that Pilog cannot be the cause. It
*never* writes to the DB (unless you explicitly call 'put>' or 'store' etc.

Can you try to debug it to find the exact place where things get overwritten?


> I was just wondering how to achieve something like the above
> with a piLog query that does NOT have to traverse the entire
> database each time

Your 'collect' call is not necessarily bad. With proper keys it will also not
traverse the entire DB, but only the selected range. But you are right that in
the general case a Pilog query may search in a more clever way.

☺/ A!ex

-- 
UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe

Reply via email to