问题标签 [swi-prolog]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
828 浏览

prolog - 使用 phrase_from_file 读取文件的行

我一直在尝试使用phrase_from_file语法规则解析包含整数行的文件

因此:phrase_from_file(line,'input.txt').

它失败了,我很快就迷路了,试图追踪它。我什至尝试过 print I,但它甚至没有到达那里。

编辑:: 由于以下解决方案都没有真正适合我的需求(read/1假设您正在阅读术语,有时写 DCG 可能需要太长时间),我蚕食了我在谷歌上搜索的这段代码,主要变化是添加:

0 投票
2 回答
2292 浏览

prolog - 谓词从(swi)序言中的文件中读取整数

我正在浏览 swi-prolog 中的 IO 手册页,但找不到从文件/流中读取整数(或数字)的谓词。在谷歌上也没有找到任何东西:|

我知道怎么写,只是想知道是否有内置的东西,因为我猜它会更快。

0 投票
1 回答
692 浏览

c++ - SWI-Prolog C++ 接口

尝试在 prolog 中加载使用 swipl-ld 生成的 DLL 时出现错误,引发异常的谓词是这个

例外是这个

0 投票
1 回答
316 浏览

c++ - swi_prolog 调用 c++ 程序

我有一个 c++ 程序,我想有一个 prolog 程序调用 c++ 程序中的函数或方法。我是新手,如果有一些教程,我会很感激这个链接。

谢谢

0 投票
2 回答
373 浏览

prolog - 用 swi prolog 搜索静态事实的最快方法?

有没有更快的方法来编译或索引大量事实以提高速度?我有大约 30K 形式的事实 linked(groupid,id)

并尝试查找给定 id 的连接,但这真的很慢。我使用规则

0 投票
2 回答
3323 浏览

prolog - 如何从 Prolog 中的文本文件中读取数据

如何从 Prolog 中的文本文件中读取数据?在 SWI-prolog 中是否有任何文件读取示例?

0 投票
1 回答
1168 浏览

java - 将 SWI-Prolog 与 Eclipse 和 Java(以及 JUNG)一起使用:我应该使用 ProDT、PDT 还是两者都使用?

我想一起使用 SWI-Prolog、Eclipse 和 Java,我有两个相互关联的问题:

  1. 我不知道我是否应该使用ProDTPDT或两者结合使用。

  2. PDT 说它包括一个“使 Java 代码能够与 SWI-Prolog 交互的子系统”。我不知道这本身是否足够,或者我是否应该使用InterPrologJPL或三者的某种组合。

背景

我想与使用JUNG作为其数据类型的现有 java 代码库进行交互,因此整齐地适合 java 对象层次结构可能很有用。(我想使用 JUNG 对象(例如树和图)作为我的域来应用约束——尽管如果需要,我愿意以迂回的方式执行此操作,即将 JUNG 对象映射到使用 SWI 可用约束模式更易于管理的数据类型。 )

我想部署到 PC 和 MAC,也想试用 SWI 的CHRrp 包

0 投票
1 回答
5341 浏览

prolog - SWI Prolog 从命令行解释/编译

我正在使用 Windows,我想用 cmd 解释/编译一个 prolog 文件,有什么方法可以做到这一点吗?目的是将解释器/编译器序言的外壳制作成如下文件:

并在输出文件中作为我目标的答案。我已经阅读了一些文档,swi-prolog.com但没有找到。

我曾尝试使用 GNU Prolog(它给我带来了 gcc 的错误)

我有这个文件D:\a.pl

在 CMD 我跑swipl -s D:\a.pl -o D:\a2.txt

我想在 a2 中找到我目标的答案,但事实并非如此。

0 投票
1 回答
4678 浏览

prolog - 在序言中将行读取到原子列表

我需要将任何行(来自 user_input)读入原子列表,例如:

进入:

到目前为止我得到了什么:

但这仅适用于单个单词,因为 atom_codes。read/2 也抱怨空格,那么有什么办法吗?

哦,也许然后以逗号分割成二维列表,附加点/感叹号/问号,例如:

顺便说一句:那是 SWI 序言。

编辑:找到解决方案:

无法回答我自己的问题,因为我没有 100 名声望:-/

0 投票
3 回答
1460 浏览

prolog - go/0 未定义程序保存/1

swi-prolog 5.10.2

我已经输入了这个 prolog 程序。但是,当我运行选项 a 时,我收到以下错误。

我确信 save 是一个正确的关键字谓词,并且文件的路径也确实存在。不知道我哪里出错了。

源代码

提前谢谢了,