- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在Hassan Aït-Kaci's "Warren's Abstract Machine: A Tutorial Reconstruction" 2.2节,L0查询的编译顺序已经很清楚了:寄存器分配必须用从左到右的广度优先搜索,生成代码必须用从左到右的后序深度优先搜索。
在 2.3 节中,寄存器分配(L0 程序)的顺序很明确:从左到右的广度优先搜索。代码生成的顺序不是。仅给出一个例子,我不知道我应该使用 BFS 还是 DFS 来生成代码。
谁能给我以下 L0 程序的 WAM 代码?
p(q(r(a)),s(b)).
最佳答案
我把你的程序放在sample.pl
中:
$ cat sample.plp(q(r(a)),s(b)).
Using GNU Prolog, I then did:
$ gplc -w sample.pl
WAM 指令随后包含在 sample.wbc
中:
clause(p(q(r(a)),s(b)),[ get_structure(q/1,0), unify_structure(r/1), unify_atom(a), get_structure(s/1,1), unify_atom(b), proceed]).
关于prolog - 为 L0 程序术语生成 WAM 代码的正确顺序是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40312424/
WAM:重构教程指出查询 p(Z, h(Z,W), f(W)) 需要使用以下原则展平: 话虽这么说,查询扁平化形式是: X3=h(X2, X5), X4=f(X5), X1=p(X2, X3, X4)
我记得有一次读到至少有两种其他替代品与 WAM 大致同时发明。任何指针? 最佳答案 在 WAM 之前,有 Clocksin 的 ZIP。它的设计还是很有趣的。 SWI-Prolog 使用它。 B-Pr
关闭。这个问题需要更多focused .它目前不接受答案。 想改善这个问题吗?更新问题,使其仅关注一个问题 editing this post . 7年前关闭。 Improve this questi
Warren's Abstract Machine: A Tutorial Reconstruction 中的练习 2.2 要求表示项 f(X, g(X, a)) 和 f(b, Y),然后对这些项的地
在Hassan Aït-Kaci's "Warren's Abstract Machine: A Tutorial Reconstruction" 2.2节,L0查询的编译顺序已经很清楚了:寄存器分配
在黑客的背景下 clpz在 sicstus-prolog我想看一眼warren-abstract-machine由 SICStus Prolog 生成的代码。 例如,让我们剖析以下谓词! is_lis
是否可以使用 GNU Prolog 显示查询的 WAM 代码? ? 我知道我可以使用 pl2wam 为程序生成 WAM,但是我对程序执行的查询呢?有没有办法为此显示 WAM 代码? 我在 x64 Wi
我刚刚创建了我的第一个 WAMS(请安静 - 请不要歇斯底里)。 但是,当我进入 WAMS 管理区域时,它要求我“选择平台”,其中包含“Windows 应用商店”、“Windows Phone 8”和
有什么方法可以使 whatsapp 的那部分工作 document interaction API : Alternatively, if you want to show only WhatsApp
我一直在尝试使用 MPEG-DASH 的 dash.js reference player播放来 self 的 Windows Azure 媒体服务 (WAMS) 帐户的媒体。不幸的是,Chrome
我正在阅读 Hassan Ait-Kaci 的书 Warren's Abstract Machine - A Tutorial Reconstruction .目前我停留在第 2.4 节“参数寄存器”
我是一名优秀的程序员,十分优秀!