You need to write the function in prefix form, thus:
{-# RULES "T" forall x. (||) True x = True #-}
I know this is stupid, but I havn't got around to fixing it.
Simon
> -----Original Message-----
> From: [EMAIL PROTECTED]
> Sent: Thursday, July 08, 1999 2:46 PM
> To: [EMAIL PROTECTED]
> Subject: rules
>
>
> I am trying Rules with ghc-CVS-June-end-1999:
>
> module T where
> {-# RULES "T" forall x. (True || x) = True #-}
>
> f = True || False
>
> ghc -c -O -fglasgow-exts t.hs
> yields
> Rule T: Illegal left-hand side: (True || x)
> LHS must be of form (f e1 .. en) where f is not forall'd
>
> I could not invent any simplest Rule to pass the compilation.
>
>
> ------------------
> Sergey Mechveliani
> [EMAIL PROTECTED]
>
>
>