2011-04-23 82 views
1

搜索我有这样的序言代码:在bibliographyc列表(序言)

libro(autor('Chomsky', 'Noah'), 
     titulo('Aspectos de la Teoría de la sintaxis'), 
     editorial('Madrid', 'Aguilar'), 
     fecha(1970)). 

libro(autor('Matthews', 'P'), 
     titulo('Inflectional Morphology'), 
     editorial('Cambridge', 'Cambridge University Press'), 
     fecha(1972)). 

libro(autor('Chomsky', 'Noah'), 
     titulo('Estructuras sintácticas'), 
     editorial('Mexico', 'Siglo XXI'), 
     fecha(1974)). 

我需要找到乔姆斯基写的所有书籍(对我来说)。什么是rutine获得他们?

谢谢

回答

3

你只需要匹配如下模式autor('Chomsky',_)

?- libro(autor('Chomsky',_),T,E,Y). 
T = titulo('Aspectos de la Teoría de la sintaxis'), 
E = editorial('Madrid', 'Aguilar'), 
Y = fecha(1970) ; 
T = titulo('Estructuras sintácticas'), 
E = editorial('Mexico', 'Siglo XXI'), 
Y = fecha(1974). 

你需要键入一个分号来获取下一个结果。

你也可以使用findall让所有结果列表,例如:

?- findall(libro(T,E,Y),libro(autor('Chomsky',_),T,E,Y),R). 
R = [libro(titulo('Aspectos de la Teoría de la sintaxis'), editorial('Madrid', 'Aguilar'), fecha(1970)), libro(titulo('Estructuras sintácticas'), editorial('Mexico', 'Siglo XXI'), fecha(1974))]. 
+0

谢谢你帮我这个问题。这很有帮助 – calejero 2011-05-16 18:37:51