如何从 ruby 代码 运行 swi-prolog 文件

How to run swi-prolog file from ruby code

系统(File.dirname(文件)+"/file.pl")
如果我使用这个命令 file.pl 而不是 运行,但是如果我在 Windows promt 上使用这个命令,它 运行.

您需要先指定Swi-Prolog可执行文件的路径,然后使用-s参数指定要执行的文件名,例如:

system "C:/Program Files/swipl/bin/swipl-win.exe", "-s", File.dirname(FILE)+"/file.pl"

如果你想让Swi-Prolog在启动后运行特定的目标,你也可以添加-g goal参数:

system ".../swipl-win.exe", "-s", "yourfile.pl", "-g", "your_goal"

您还可以通过添加 -t halt:

让 Swi-Prolog 在执行完您的目标后退出
system ".../swipl-win.exe", "-s","yourfile.pl", "-g", "your_goal", "-t", "halt"