List 为什么我不能在这个Prolog查询中从length获取值?

List 为什么我不能在这个Prolog查询中从length获取值?,list,prolog,List,Prolog,我的.pl文件中有类似的内容: ... path_length(A, B, length(L, size)) :- path_record(A, B, L). ... 当我这样做的时候: path_length(a,g,X) 我得到: X = length([a,b,c,d,f,g],size) 但我希望查询返回的是: X = 6 我做错了什么?很明显,我对Prolog还不熟悉,所以很抱歉,如果这个问题的级别很低,并且答案对某些人来说是显而易见的 如果需要帮助,我可以添加更多信息

我的.pl文件中有类似的内容:

...
path_length(A, B, length(L, size)) :-
    path_record(A, B, L).
...
当我这样做的时候:

path_length(a,g,X)
我得到:

X = length([a,b,c,d,f,g],size)
但我希望查询返回的是:

X = 6
我做错了什么?很明显,我对Prolog还不熟悉,所以很抱歉,如果这个问题的级别很低,并且答案对某些人来说是显而易见的

如果需要帮助,我可以添加更多信息。(无法添加整个.pl,抱歉)让我知道!:)


感谢您的帮助!:)泰。

哦,我明白了!感谢@capelical提供快速完美的帮助!:)
path_length(A, B, Size) :-
    path_record(A, B, L),
    length(L, Size).