如何添加函数(例如汉明权重)并在右侧出现的表达式中使用它是一些(is)/2
goal?
像 goal_expansion 或 term_expansion 这样的东西可以帮助这里吗?
我承认这不是一个大功能,但它可以提高我的一些 Prolog 程序的可读性。
写一个自定义(is)/2
谓词(实现自定义表达式求值器)是可行的,但我希望保持较低的运行时开销,因为在这种情况下我不想牺牲运行时开销的可读性。
ISO Prolog中没有这样的规定,也没有扩展(is)/2
也不依赖于目标扩张。并且,查看一些实现为此目的提供的各种实现特定功能,没有普遍同意的方法来做到这一点。所以实现你自己的(my_is)/2
似乎是最好的办法。
另请注意,这不仅会影响(is)/2
还有所有其他使用可评估函子的内置函数。特别是,所有算术比较内置函数(8.7 算术比较)(参见本概述 http://www.complang.tuwien.ac.at/ulrich/iso-prolog/prologue#status_quo)会受到影响。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)