On 01/04/2009, at 12:52 AM, Emmanuel Onzon wrote:
>
> Suppose you have + < ^ (addition less than
> exponentiation) and you want to add multiplication:
>
> + < *
> * < ^
>
> then since Dypgen relations are not transitive you have to *remove*
> the
> relation
>
> + < ^
>
> to build a strict chain.
>
> No you don't have to remove it. Making a relations transitive
> is not mandatory but it is not forbidden either.
> You can even introduce the transitive closure of the relation
> for a list of priorities with:
> Relation [["p1";"p2";"p3";"p4"]]
>
> If you remove + < ^ then you lose the precedence
> of ^ over + and the expression:
>
> a ^ b + c
>
> become ambiguous.
Exactly what is desired by a "strict chain". Here you wish
to force the user to write
(a ^ b) + c
i..e. to put brackets in. Example is artificial though :)
--
john skaller
[email protected]
------------------------------------------------------------------------------
_______________________________________________
Felix-language mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/felix-language