我已经有足够扎实的Prolog背景,现在想在Erlang中开发代码。这两种语言看起来很相似,但是缺少了在Prolog中非常有用的剪枝“!”操作符。 现在我在想,Erlang中是否有这样的操作符?或者我可能遗漏了什么,没有必要使用这种操作符?
在 Erlang 中,没有必要使用这个运算符;在 Prolog 中,它用于限制回溯,但在 Erlang 中不存在这种意义上的回溯。 Erlang 的语法与 Prolog 非常相似,因为它最初是在 Prolog 中开发的,并且可以使用其标准库轻松解析,但语义不太相同。
member(X, [a, a, a])
,你会得到“错误:未绑定变量X”的提示(不是精确措辞)。 - Alexey Romanov