I don't know whether its a good name or not (the ===), but I have the
following in a generic utilities file I have, and I use it every now and
then.

(===) :: (Typeable a, Typeable b, Eq b) => a -> b -> Bool
(===) x y = cast x == Just y

(Notice you don't need Eq a in the context)

On 11 June 2010 12:51, Ben Millwood <[email protected]> wrote:

> On Fri, Jun 11, 2010 at 12:46 AM, Felipe Lessa <[email protected]>
> wrote:
> >
> >  eqTypeable :: (Typeable a, Eq a, Typeable b, Eq b) => a -> b -> Bool
> >  eqTypeable x y = case cast y of
> >                     Just y' -> x == y'
> >                     Nothing -> False
> >
>
> ...or indeed:
>
> eqTypeable x y = cast x == Just y
> _______________________________________________
> Haskell-Cafe mailing list
> [email protected]
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>



-- 
Ozgur Akgun
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to