我想在服务器上托管XSB Prolog。有没有人能告诉我这个程序是什么?下面的git链接解释了如何在服务器上托管SWIPL,但同样的方法不适用于XSB https://github.com/SWI-Prolog/swish。
非常感谢您的帮助。
发布于 2017-12-25 00:16:41
如果您想在服务器上托管XSB,只需使用子进程派生到XSB即可。
请参阅XSB Manual
spawn_process(+CmdSpec,-StreamToProc,-StreamFromProc,-ProcStderrStream,ProcId)
派生由CmdSpec指定的新进程
XSB子进程的用途之一是创建产生并控制子进程的XSB服务器。派生的子进程可以是另一个XSB进程。下面的示例显示一个XSB进程派生另一个进程,向其发送评估和获取结果的目标:
`| ?-` spawn_process([xsb], To, From,Err,_),
file_write(To,’assert(p(1)).’),
file_nl(To),
file_flush(To,_),
file_write(To,’p(X), writeln(X).’),
file_nl(To),
file_flush(To,_),
file_read_line_atom(From,XX).
`XX = 126`
`yes`
`| ?-`
"Here the parent **XSB** process sends “
`assert(p(1)).`
” and then “
`p(X), writeln(X).`
” to the spawned XSB subprocess."
"The latter evaluates the goal and prints (via “ `writeln(X)` ”)
to its standard output..."https://stackoverflow.com/questions/40656825
复制相似问题