Question on expression levels in Prolog parsing rules

Hi guys,

I am looking at Tau Prolog’s grammar rules, see in particular Figure 1: Formal grammar, where the parsing rules are represented.

I do not understand why in Expr_0 the sub-expressions in parentheses are at level 1200, while in Term_2 and Term_3 and in List_2 and List_3 the sub-expressions in parentheses are at level 999.

Can anybody explain? What’s the idea?

BTW, Tau Prolog is mostly ISO conformant, so I suppose mostly the same parsing rules are found in SWI and ISO: right? (I do not have a copy of the ISO standard, and parsing rules are not documented in the SWI manual AFAICT.)

The rule is motivated to resolve some ambiguity of (‘,’)/2

Ah, I see. Thank you!

The rule is not strictly followed by SWI-Prolog

Is that documented anywhere?