2013-03-02 2 views

ответ

1

Оператор определен следующим образом:

:- op(Precedence, Associativity, Operator). 

This answer на подобный вопрос объясняет это, но короткий ответ, что Associativity управления опционного это; xfy делает оператор лево-ассоциативным и yfx делает ассоциативный оператор ассоциативным. Precedence сообщает Prolog, как решить, какой оператор является подвыражением, когда он видит более одного.

+0

Спасибо за объяснение. То, о чем я не понимаю, - это, если я смогу удалить некоторые дополнительные paranthesis, добавленные Prolog, в мои выражения, или это значение по умолчанию? –

+0

Я так не думаю. Это проблема или просто эстетическое недовольство? –

+0

это эстетически неприятно, и мне было интересно, есть ли способ отменить это. –

2

Parens только что добавлены изображением. Они не являются частью внутреннего представления кода. Вы можете переопределить изображение, чтобы изменить способ печати. см. portray_text

Смежные вопросы