问题标签 [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.
javascript - 如何通过 Javascript 查询 Prolog?
我正在使用 SWI-Prolog 查询 WordNet 数据库。我现在需要构建一个 HTML 界面,该界面将接受来自用户的单词并针对 db 查询它。
我如何编写一个 JS 代码,将单词发送到 Prolog 包装在查询中,以及如何检索有意义的变量中的结果,我可以在网页中显示回来?
c# - 使用 SWI-Prolog C# 从 C# 中的 Prolog 查询中获取结果
我正在使用 C# 使用 SWI-Prolog 为 prolog 文件编写 GUI,但是我不知道如何从查询中获取解决方案到某些字符串中。
pl 中的查询 direct_evening_flight(london,edinburgh) 返回一周中的某些日子,例如星期一、星期二、星期四。
如果我在 C# 中执行查询
它会自动将结果打印到控制台中。但是,我想将结果一一接收到字符串变量中。我怎样才能做到这一点?
swi-prolog - Prolog 用户识别
我正在使用 prolog 创建一个用于 web 的 API。用户将使用他们的姓名登录,我希望 API 在整个会话期间记住用户,直到用户注销或关闭 API。对于每个唯一用户,这当然必须有所不同。我的问题是我将如何在 prolog 中将其写为 assert/2,或者......?
prolog - 在 SWI-Prolog 中创建保存状态
我正在尝试从 Windows 的顶层创建已保存的状态,但我不断收到此错误:
我认为这应该这样做。为什么它甚至试图调用'mark_executable'?我想要的只是一个可以从嵌入式 C/C++ 应用程序加载的资源文件。
任何人都可以帮忙吗?
random - Swi-Prolog:未定义的程序:random_permutation/2
为什么这个谓词random_permutation
不起作用?
http://www.swi-prolog.org/pldoc/doc_for?object=random_permutation/2
我怎样才能让它工作?
forms - SWI-Prolog cgi_get_form(Arguments) 保存和处理参数 web 表单
我正在寻找一种保存方法,并在提交表单时在 SWI-Prolog 中处理 Web 表单的参数后调用同一个程序来生成另一个表单,依此类推。总是从一种形式调用相同的 prolog 程序到下一种形式。
CGI SWI-Prolog 库将这些参数保存为名称(值)术语列表,即[Name(Value)]
.
如果我在表单内传递参数(如隐藏参数)(TotalArguments 是一个列表):
format('"<"input type="hidden" id="nameofform1" name="nameofform1" value="~w" />~n', TotalArguments),
当我附加它时,我需要删除在 TotalArguments 上的结果列表中连接的 id 或名称。知道如何做到这一点,以便最终列表看起来像[nameofform1(value1), nameofform2(value2),...]
吗?
我也可以编写这个参数列表并将其附加到一个文件中,并在每次再次调用程序时查阅它,但这将始终加载它们,我只需要加载特定步骤中所需的参数和处理的表单片刻。因为否则此文件在某些执行后可能包含不需要的信息。关于如何做到这一点的任何想法?
对于此类问题还有其他建议吗?
使用隐藏表单编辑我的解决方案
我通过创建解决了它:
然后做:
extract_value(参数,值),
并提交表单的隐藏值,例如:
format('<"input type="hidden" id="nameofform1" name="nameofform1" value="~w"/>~n', [值]),
并将其附加到下一个表单中,以便它看起来像我想要的那样:
[nameofform2(value2),nameofform1(value1)]
xml - 处理基于 XML 的 DSL
SWI-Prolog 作为一个通用的 XML 处理器提供了很多东西。
library(sgml)
用于读/写 XML 结构化格式,library(xpath)
用于导航等等...但是如果我尝试读取 SVG,它是有效的 XML,我会收到以下消息:
错误的。
有人对此有提示吗?我还想重写最终修改的文件内容,当然保留独特的 DTD。
prolog - 如何关闭 SWI-Prolog 标志?
我不确定标志是否是合适的术语,但无论如何配置一个 swi-prolog 程序在查询完成时不输出真或假,而是简单地打印出程序中确定的另一条语句?
prolog - 将 prolog 集成到其他环境中
我正在使用 Prolog 进行学术项目。我想知道 Prolog 是否有办法与其他编程语言进行交互。我想要的是 Prolog 问题和答案的简单输入/输出重定向。
我知道 Prolog 可以在某些 Prolog 实现中调用 C 函数。即 SWI 序言。
我需要的是 Prolog 问题和用户提供的答案的简单输入/输出重定向。
任何帮助将非常感激。