- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
tl:dr - 我有一行 prolog,在一个版本的 Prolog (SWI) 中工作正常,但在另一个版本 (TuProlog) 中则不行。
我正在将脚本从 SWI prolog 移植到 Tuprolog。 (TuProlog 最近做了一次大更新,我在两个版本上都得到了相同的行为)
当我使用下面的 java 设置将脚本放入 TuProlog 时,出现错误“整个字符串无法作为一个术语读取”。
所以我减少了脚本(有效地使用二分搜索),直到将脚本减少为:
iterm3(Term) --> "'", notquote(Cs), "'", { name(Term1,Cs), Term = q(Term1) }.
虽然滑动很好,但输出如下......
cobrakai:~ josephreddington$ swipl -s /Users/josephreddington/Documents/workspace/com.plancomps.prolog.helloworld/caml-light-dynamics/Tools/Prolog/temp.pl% library(swi_hooks) compiled into pce_swi_hooks 0.00 sec, 3,992 bytes% /Users/josephreddington/Documents/workspace/com.plancomps.prolog.helloworld/caml-light-dynamics/Tools/Prolog/temp.pl compiled 0.00 sec, 1,720 bytes
Welcome to SWI-Prolog (Multi-threaded, 64 bits, Version 5.10.5)
Copyright (c) 1990-2011 University of Amsterdam, VU Amsterdam
SWI-Prolog comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to redistribute it under certain conditions.
Please visit http://www.swi-prolog.org for details.
For help, use ?- help(Topic). or ?- apropos(Word).
?-
但在 Tuprolog 中仍然返回“整个字符串无法被读取为一个术语” - 谁能告诉我为什么会发生这种情况?
附录:使用的代码:
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import alice.tuprolog.NoMoreSolutionException;
import alice.tuprolog.NoSolutionException;
import alice.tuprolog.Prolog;
import alice.tuprolog.SolveInfo;
import alice.tuprolog.Theory;
public class EntireStringForStackOverflow {
public static void main(String[] args) throws Exception {
Prolog engine = new Prolog();
engine.loadLibrary("alice.tuprolog.lib.DCGLibrary");
engine.addTheory(new Theory(readFile("temp.pl")));
}
private static String readFile(String file) throws IOException {
BufferedReader reader = new BufferedReader(new FileReader(file));
String line = null;
StringBuilder stringBuilder = new StringBuilder();
String ls = System.getProperty("line.separator");
while ((line = reader.readLine()) != null) {
stringBuilder.append(line);
stringBuilder.append(ls);
}
return stringBuilder.toString();
}
}
最佳答案
我猜可能是 Tuprolog 中需要引用单引号。我会尝试
iterm3(Term) --> "\'", notquote(Cs), "\'", { name(Term1,Cs), Term = q(Term1) }.
编辑 现在我必须承认我不知道 tuProlog DCG 的文档在哪里,而且我也不能花太多时间搜索它(我可以阅读 实际上)。对你的语法的另一个修改,你可以在其中看到为什么我建议上面无用的修改:
iterm3(Term) --> ['\''], notquote(Cs), ['\''], { name(Term1,Cs), Term = q(Term1) }.
也就是说,通过 try-and-fail 来验证 tuProlog 中是否禁止使用双引号常量...
关于java - Prolog/tuprolog,一行返回 'The enitire [sic] string could not be read as one term',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17784581/
我需要下载youtube视频并将其转换为mp3。是否有任何可维护的[sic] gem 用于从youtube下载视频? 最佳答案 不是gem,而是可以在shell中运行的可执行文件youtube-dl。
我编写了一个 SIC 汇编程序,除了 I/O 方面外,一切似乎都运行良好。 我已经将目标代码加载到内存中(将 char 格式转换为机器表示形式),但是当我调用 SICRun();执行代码时,我收到一条
我意识到这是一个不必要的问题,但是......为什么我不能使用 reduce 将字符数组转换为字符串? 例如, let str = "this is a string" let clist = Arr
我几乎已经为我的系统编程类(class)完成了 SIC 汇编程序的编码,但我在标记化部分遇到了困难。 例如,拿这行源码来说: 格式(自由格式)为:{LABEL} OPCODE {OPERAND{,X}
我目前正在研究 SIC 汇编程序并扫描以下文件中的行: begin START 0 main LDX zero copy LDCH str1, x S
使用Ambari,This is comment for WebHcat Service是“服务选择”步骤中的最终选择。 如果我没有选择此服务,那么Customize Services步骤将无限期挂起
有一个网络服务,在它的 onDelete 方法中处理数据;所以,我需要用我的 DELETE 请求传输一些数据......实际上我完全不知道如何在 Perl 中做到这一点:( 有没有人对此有任何想法?也
嗨,我正在我的大学上学习系统软件类(class),并且正在使用 SIC 编写汇编代码。我已经用 C 编写了代码。所以我将其翻译为 SIC,并且我有一个关于 SIC 变量策略的问题。我可以重复使用人口来
当我对我的一些 Java 代码运行自动批量测试时,我遇到了一个奇怪的“Invalid Packet Lenght”(错误的拼写方式)错误,我希望有人之前遇到过这个错误或者可以指出我在正确的方向。 通过
我正在使用 Edgar 的 10-Ks。为了协助文件管理和数据分析,我想创建一个表,其中包含每个文件的路径、提交的公司的 CIK 编号(这是由 SEC 颁发的唯一 ID)以及它所属的 SIC 行业代码
我的 Controller 上有一些 POST Action ,它们是从一对 GET Action 中命中的。当验证失败时,我想呈现 POST 来自的操作的 View 。例如: ~/accounts
My Mac 应用程序旨在编辑和分析图形,用户可以在文件系统的任何位置创建和存储这些图形。我去找用户让他们用 [NSOpenPanel openPanel] 和一个内联完成处理程序 block 打开一
tl:dr - 我有一行 prolog,在一个版本的 Prolog (SWI) 中工作正常,但在另一个版本 (TuProlog) 中则不行。 我正在将脚本从 SWI prolog 移植到 Tuprol
我是一名优秀的程序员,十分优秀!