Malcolm Wallace <[EMAIL PROTECTED]> wrote,

> Manuel M T Chakravarty <[EMAIL PROTECTED]> writes:
> 
> > Sure, but there is also 
> >   null = (== [])
> > in the Prelude and `Maybe.isNothing'.
> 
> No, the definition of null is
>     null [] = True
> which is quite different from (==[]) because it has a less-constrained type.
>     null   :: [a] -> Bool
>     (==[]) :: Eq a => [a] -> Bool
> 
> Likewise,
>     isNothing   :: Maybe a -> Bool
>     (==Nothing) :: Eq a => Maybe a -> Bool
> 
> So there are good reasons for having separate predicates testing
> the null/empty case at those polymorphic types, but no reason (except
> consistency of naming) for a pseudo-polymorphic type like Ptr a.

Oh, you are right.  I overlooked this.  In this case, I 
actually tend to not include these extra functions (unless
somebody likes to argue in their favour).

Cheers,
Manuel
_______________________________________________
FFI mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/ffi

Reply via email to