[Haskell-cafe] Re: Why is type 'b' forced to be type 'm a' and not possibly 'm a -> m a'

2006-10-01 Thread tpledger
Vivian McPhail wrote: ... > I need the arg a to be evaluated before it gets > passed to a1 and a2. This definition does the right thing > when type 'a' is a function type, because it is not a > value, but with something like 'm a -> (m a -> m a) -> m > a' with Forkable (a -> b) the first arg gets e

[Haskell-cafe] Re: Why is type 'b' forced to be type 'm a' and not possibly 'm a -> m a'

2006-09-20 Thread Vivian McPhail
> Vivian McPhail wrote: > > > > class Forkable a where > > > > fork :: String -> a -> a -> a > > > What I would like to be able to do is > > differentiate between Forkable (m a -> > > b) and Forkable ( -> b). > > Have you tried this combination of instances? > > instance Forkable (IO

[Haskell-cafe] Re: Why is type 'b' forced to be type 'm a' and not possibly 'm a -> m a'

2006-09-20 Thread tpledger
Vivian McPhail wrote: > > > class Forkable a where > > > fork :: String -> a -> a -> a > What I would like to be able to do is > differentiate between Forkable (m a -> > b) and Forkable ( -> b). Have you tried this combination of instances? instance Forkable (IO a) where ... -- a

[Haskell-cafe] Re: Why is type 'b' forced to be type 'm a' and not possibly 'm a -> m a' (Anatoly Zaretsky)

2006-09-18 Thread Vivian McPhail
> Message: 6 > Date: Fri, 15 Sep 2006 18:36:35 +0300 > From: "Anatoly Zaretsky" <[EMAIL PROTECTED]> > Subject: Re: [Haskell-cafe] Why is type 'b' forced to be type 'm a' > and not possibly 'm a -> m a' > To: "Vivian McPhail" <[EMAIL PROTECTED]> > Cc: Haskell Cafe > Message-ID: > <[EMAI