On Sat, Apr 21, 2007 at 10:50:33PM +0200, Eric Y. Kow wrote:
> Hi,
> 
> Haven't had a proper look yet, thought you might want some initial
> comments. Off to bed whilst darcs commutes away (poor thing).
> 
> On Fri, Apr 20, 2007 at 17:21:12 -0700, David Roundy wrote:
> > -                apply_patches_with_feedback [] False feedback putInfo
> > +                apply_patches_with_feedback [] feedback putInfo
> 
> I personally would waited for unstable to get rid of that superfluous
> isW flag, mostly in the interests of avoiding conflicts.

Hmmmm.  I'm impatient, and don't like meaningless flags... but if I'd
thought of that, I might have done the same.

> > +data TolerantIO a where
> > +    TThen :: TolerantIO a -> (a -> TolerantIO b) -> TolerantIO b
> 
> Is it ok to have GADTs in stable? Weren't there issues with GADTs in
> GHC?

I think so, but my latest version of the patch avoids this, and I think is
probably more efficient, also.

> > +   tio >>= f = TThen tio f
> 
> The TThen, TCatch, etc stuff is kinda neat.

Yeah, but I've cut it now, in favor of two distinct monads (with an
identical interface).  I suspect this is faster, as we don't have to
construct anything but "real" IO objects.  The code is also definitely
simpler, although to avoid undecidable instances, I need to duplicate all
the instance declarations!  :( That's definitely something I'd to fix, but
I don't see any way that is particularly prettier than writing code to copy
the code.  :(  Maybe I should have stuck with the GADTs...
-- 
David Roundy
http://www.darcs.net

Attachment: signature.asc
Description: Digital signature

_______________________________________________
darcs-devel mailing list
[email protected]
http://lists.osuosl.org/mailman/listinfo/darcs-devel

Reply via email to