cnfify() performance

Started by Hiroshi Inoueover 26 years ago1 messages
#1Hiroshi Inoue
Inoue@tpf.co.jp

Hi all,

A question about TODO item
* Fix memory exhaustion when using many OR's

pull_ors() and pull_ands() are called while processing
cnfify() and both call copyObject().
^^^^^^^^^^^^^^
For example in pull_ors()

return (pull_ors(nconc(copyObject((Node *) args),
copyObject((Node *) lnext(orlist)))));

copyObject() seems too heavy
Is copyObject() necessary in this case ?
Couldn't we change as below ?

return (pull_ors(nconc(listCopy(args),
listCopy( lnext(orlist)))));

I'm not sure it's possible or not ,because I don't understand
cnfify() and other related stuff.

If it's possible,it would improve cnfify()'s performance and
memory consumption in many OR's cases ,though it would
never fix TODO item.

Comments ?

Regards.

Hiroshi Inoue
Inoue@tpf.co.jp