list truncation:set_prolog_flag(toplevel_print_options,[max_depth(100)])无效

时间:2017-06-19 17:57:34

标签: list prolog truncation prolog-toplevel

有关如何禁用列表截断的所有问题都有答案可以使用一些变量:

?- set_prolog_flag(toplevel_print_options, [quoted(true), portray(true), max_depth(100), priority(699)]).

对我来说这不起作用,请看这里:

?- length(L, 25).
L = [_7572, _7578, _7584, _7590, _7596, _7602, _7608, _7614, _7620|...].

?- set_prolog_flag(toplevel_print_options, [quoted(true), portray(true), max_depth(1000), priority(699)]).
true.

?- length(L, 25).
L = [_7596, _7602, _7608, _7614, _7620, _7626, _7632, _7638, _7644|...].

根据例如这个anwer,这应该有效:enter link description here

必须与我的Prolog版本有关。我正在使用SWI-Prolog version 7.4.2 for x86_64-darwin16.5.0。有谁知道为什么这不适用于我的版本以及如何使其工作?

1 个答案:

答案 0 :(得分:1)

您需要使用此命令:

set_prolog_flag(answer_write_options, [quoted(true), portray(true), max_depth(100), priority(699)]).

toplevel_print_options替换为answer_write_options