对于分配我必须动态地生成的prolog过程体。我怎样才能做到这一点?动态序言子句体生成
0
A
回答
1
为SWI序言手册说明,请参见here的相关谓词。
例如,考虑以下
goal :- Z =.. [foo, 1],
Y =.. [bar,2],
X =.. [',', Z, Y],
R =.. [':-', r, X],
assert(Z), assert(Y), assert(X), assert(R).
PS:另一种可能性是较低级的,但有时可能是一个更好的选择:刚打印出你需要构建一个文件的内容。
0
断言/ 1,asserta的/ 1,收回/ 1,retractAll/1,取消/ 1
0
添加你需要使用asserta的/ 1或assertz/1(断言/ 1已被弃用)more谓词 如果你已经宣布了一些代码谓词的条款,你装,你应该使用动态/ 1 more
形成条款取决于输入的形式界定谓词动态。 如果你有谓词和参数的名称列表,你可以使用=../2 如果你有一个字符串的条款,你可以使用term_to_atom/2(两种方式都可以)
+0
我对不好的解释感到抱歉。我编辑了这个问题。 – onurozcelik 2011-05-10 12:50:21
0
您可以生成“(
”和“)
”封闭体动力学谓词。
assert(test(X):- (X1 is X+1, write(X1)))
相关问题
- 1. 从xml生成动态where子句
- 2. 动态地使用动态列名生成where子句
- 3. 使用序言产生句子
- 4. 多语言ASP.NET网站的动态生成语句
- 5. 动态生成窗体窗体控件
- 6. 动态where子句实体框架3.5
- 7. 实体框架动态Where子句
- 8. 动态生成jQuery select语句?
- 9. 动态生成连接的IF语句
- 10. C#LinqToSql生成动态在哪里子句
- 11. 使用squiggle-sql生成OR子句的动态sql
- 12. 序言,定子句语法
- 13. 实体框架4.1动态生成表
- 14. 动态where子句
- 15. 生成输出XML子句
- 16. rich:树 - 无法动态生成叶子?
- 17. jasper-reports动态子报告生成
- 18. 动态SASS生成
- 19. 生成动态xmlns
- 20. 动态生成XAML
- 21. 动态GridView生成
- 22. PDF动态生成
- 23. 动态生成jstree
- 24. 生成动态html
- 25. 动态类生成
- 26. 动态生成DOM
- 27. 生成动态CSS
- 28. 动态生成sitemap.xml
- 29. 动态生成C#
- 30. 动态生成UITableViews
我很不好解释遗憾。我编辑了这个问题。 – onurozcelik 2011-05-10 12:51:56