問題タブ [prolog-findall]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
139 参照

prolog - 効率的な findall() 処理?

私は「事実」の次の構造を持っています。

それから私はそれらの何千もあると期待しています。「条件」は、ファクトが処理されるときに評価される条件です。真であるすべての事実について、スコアとインデックスをリストに保存して、さらに処理します。一般的な考え方は、findall/3事実を調べてからそれらを調べることです...

私の心配は、findall/3実行ごとに何千もの事実を飲み込んでしまうことです。つまり、メモリを使いすぎます。

どうすればいいのでしょうfindallが、条件を1つずつ処理します。すべての条件を引き続き処理しますが、メモリの使用量を減らしたいと考えています。


「マット」の提案によると、これはうまくいくようです: