我正在使用prolog(swipl)实现一个自然语言生成器 .
我有一个.txt测试文件,其中包含一些我应该能够以这种格式生成的短语:
[goal,identify,type_object,animal,object,cat,event,ran away,when,[last,mont],where,[]]
[which,cats,ran away,last,month,?]
[goal,identify,type_object,animal,object,dog,event,ran,when,[last,mont],where,[]]
[which,dogs,ran away,last,year,?]
等等...
我如何使用plunit(或其他?)来检查我的测试文件的所有元素是否都在我的输出文件中返回true / false?
1 回答
read/1
可能是您要找的内容:假设我定义了一个事实
p/1
:那么我可以从标准输入中读取一个术语并进行比较(以
|:
开头的行由SWI Prolog表示为用户输入,您的实现可能会有所不同):