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
skal...@users.sourceforge.net





------------------------------------------------------------------------------
_______________________________________________
Felix-language mailing list
Felix-language@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/felix-language

Reply via email to