2013-05-18 94 views
0

我想創建一個預先列表。但我做錯了什麼,因爲當我把它作爲一個參數傳遞它不起作用。 這裏是我的代碼有:序言列表實例化

list([5, 1, 2, 8, 10, 4, 3, 6, 9, 7]). 

print([ ]). 
print([ X | Y ]):- write(X), write(' '), print(Y). 

test:- print(list). 

控制檯輸出:

1 ?- a. 
true . 

它不工作。但這裏是我自己通過列表的時候:

2 ?- print([5, 1, 2, 8, 10, 4, 3, 6, 9, 7]). 
5 1 2 8 10 4 3 6 9 7 
true. 

回答

2

您應該使用變量在謂詞之間傳遞信息。您的list謂詞不會「返回」值,它將實例化一個變量。

test :- list(L), print(L).