Prolog中的执行顺序:;操作人员
我目前正在钻研Prolog,但是来自JavaScript背景的我觉得很奇怪。例如,我有这样一个定义:Prolog中的执行顺序:;操作人员,prolog,operators,Prolog,Operators,我目前正在钻研Prolog,但是来自JavaScript背景的我觉得很奇怪。例如,我有这样一个定义: np # Subject, pp # IObject ; np # IObject, 然而,在执行过程中,结果并不像预期的那样。但当使用偏执论时,它是 np # Subject, (pp # IObject ; np # IObject), 这对我来说似乎很奇怪,因为,是一个分隔符,所以不需要偏执。偏执狂在序言中到底做了什么。请记住,我对Prolog非常陌生。,的值低于。这在Prolog中意
np # Subject,
pp # IObject ; np # IObject,
然而,在执行过程中,结果并不像预期的那样。但当使用偏执论时,它是
np # Subject,
(pp # IObject ; np # IObject),
这对我来说似乎很奇怪,因为
,
是一个分隔符,所以不需要偏执。偏执狂在序言中到底做了什么。请记住,我对Prolog非常陌生。,
的值低于代码>。这在Prolog中意味着什么,是这样的表达式吗
X ; Y , Z
被解释为
X ; (Y , Z)
要以另一种方式对它们进行分组,必须使用括号:
(X ; Y) , Z
,
的值低于代码>。这在Prolog中意味着什么,是这样的表达式吗
X ; Y , Z
被解释为
X ; (Y , Z)
要以另一种方式对它们进行分组,必须使用括号:
(X ; Y) , Z
,
的值低于代码>。这在Prolog中意味着什么,是这样的表达式吗
X ; Y , Z
被解释为
X ; (Y , Z)
要以另一种方式对它们进行分组,必须使用括号:
(X ; Y) , Z
,
的值低于代码>。这在Prolog中意味着什么,是这样的表达式吗
X ; Y , Z
被解释为
X ; (Y , Z)
要以另一种方式对它们进行分组,必须使用括号:
(X ; Y) , Z
考虑到,
只是列表的一个分隔符,而,这不是很奇怪吗
是一个实际的运算符?逗号也是一个运算符。尝试查询current_op(Priority,Type,,”)。
@重复,是的,确实如此。@重复确实如此。考虑到,
只是列表的分隔符,而,这不是很奇怪吗
是一个实际的运算符?逗号也是一个运算符。尝试查询current_op(Priority,Type,,”)。
@重复,是的,确实如此。@重复确实如此。考虑到,
只是列表的分隔符,而,这不是很奇怪吗
是一个实际的运算符?逗号也是一个运算符。尝试查询current_op(Priority,Type,,”)。
@重复,是的,确实如此。@重复确实如此。考虑到,
只是列表的分隔符,而,这不是很奇怪吗
是一个实际的运算符?逗号也是一个运算符。请尝试查询当前操作(优先级,类型,,)。
@repeat,是的,确实如此。@repeat,确实如此。