正如您在Prolog中所知,您可以动态地定义op / 3的优先级。 我正在用Python实现自己的Prolog。已经有工作原型,但我仍然通过有限的python伪prolog更新数据库。 我的下一步是实现Parser。我可以做静态语法,没有操作优先权。
我的问题如何优先实施优先权?有没有一个词呢?
它不一定是完全动态的op / 3,即使我必须在开始解析之前预先加载op-table,我也没关系。 我想我可以事先通过字符串操作来修改语法。
如果重要的话,我可能会使用LEPL:http://www.acooke.org/lepl/。