为什么 Prolog 使用 =< 而不是像大多数语言那样使用 <=?
Why does Prolog use =< Rather than <= like most languages?
在我的编程语言中 class 我们是 运行 下面的程序:
range(X,Y,Z) :- X>=Y,X<=Z
这不会编译,经过短暂的 google 搜索,我们发现 prolog 使用 =< opporator 而不是 <= ,就像我们了解的大多数其他语言一样。
有人知道序言为什么这样做吗?有什么原因吗?
提前致谢。
是,有一个很好的理由:<=
看起来像一个箭头,而且由于Prolog也经常用于逻辑证明,这是"reserved"以在需要时容纳此类用途,表示从右到左的含义。
顺便说一句,(=<)/2
相当低级。最好使用 constraints 让你的程序更通用,更容易理解。
在我的编程语言中 class 我们是 运行 下面的程序:
range(X,Y,Z) :- X>=Y,X<=Z
这不会编译,经过短暂的 google 搜索,我们发现 prolog 使用 =< opporator 而不是 <= ,就像我们了解的大多数其他语言一样。
有人知道序言为什么这样做吗?有什么原因吗?
提前致谢。
是,有一个很好的理由:<=
看起来像一个箭头,而且由于Prolog也经常用于逻辑证明,这是"reserved"以在需要时容纳此类用途,表示从右到左的含义。
顺便说一句,(=<)/2
相当低级。最好使用 constraints 让你的程序更通用,更容易理解。