0
我想做一個否定的基本情況,也就是說,如果參數是一個空列表,則該規則不應起作用。序言中的否定謂詞
\ + fun([])。
一種選擇是在我爲樂趣編寫的每條規則(L)中放置一個「L =/[]」,但是隻有一個否定謂詞會更好。
我想做一個否定的基本情況,也就是說,如果參數是一個空列表,則該規則不應起作用。序言中的否定謂詞
\ + fun([])。
一種選擇是在我爲樂趣編寫的每條規則(L)中放置一個「L =/[]」,但是隻有一個否定謂詞會更好。
聽起來像是你想
fun([_|_]). % true if argument is a list of at least 1 element
每隔fun
條款
fun([]) :- !, fail.
爲什麼不定義規則非空列表而不是空列表的前加?然後它會失敗的空列表。您應該舉例說明一個示例規則。另外,'L =/[]'不正確。你的意思是'L \ = []'。 – lurker 2014-10-07 01:59:43