索引
所有广泛使用的 Prolog 解释器都使用参数索引来有效地选择合适的子句。
用户通常至少可以依赖于第一个参数索引,这意味着可以通过第一个参数的最外层术语的仿函数和 arity 来有效地区分子句。在该参数被充分实例化的调用中,匹配子句基本上可以通过对该参数进行散列而在恒定时间内选择。
最近, JIT 索引已经在更多系统中实现,可以在调用谓词时对任何充分实例化的参数进行动态索引。
所有广泛使用的 Prolog 解释器都使用参数索引来有效地选择合适的子句。
用户通常至少可以依赖于第一个参数索引,这意味着可以通过第一个参数的最外层术语的仿函数和 arity 来有效地区分子句。在该参数被充分实例化的调用中,匹配子句基本上可以通过对该参数进行散列而在恒定时间内选择。
最近, JIT 索引已经在更多系统中实现,可以在调用谓词时对任何充分实例化的参数进行动态索引。