首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在SWI中模拟atom_to_term(+Atom,-Term,-Bindings)?

如何在SWI中模拟atom_to_term(+Atom,-Term,-Bindings)?
EN

Stack Overflow用户
提问于 2013-11-23 17:46:36
回答 1查看 316关注 0票数 4

我正在使用SICStus Prolog编写一个Dali代理,我需要将一个原子转换成一个术语,但是我不能使用atom_to_term,它是在SWI中构建的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-11-23 19:22:06

使用library(codesio)

代码语言:javascript
运行
复制
| ?- use_module(library(codesio)).
yes
?- set_prolog_flag(double_quotes,codes).
true.
| ?- read_from_codes("a(X,Y).",T).     

T = a(_A,_B) ? yes
| ?- read_term_from_codes("a(X,Y).",T,[variable_names(VN_list)]).
T = a(_A,_B),
VN_list = ['X'=_A,'Y'=_B] ?

除此之外,您还需要atom_codes/2,即ISO。

对于更复杂的操作,可以使用open_codes_stream/2打开流。这需要用close/1来关闭。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20165720

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档