Re: Breaking Changes and Long Term Support Haskell

2015-10-21 Thread Dan Doel
nderlying concern: we are losing valuable > members of the community not because of the technical decisions that are > being made, but because of the process by which they are being made. > That concern is what drove my proposals. It is perfectly valid to think > that that loss was the i

Re: Breaking Changes and Long Term Support Haskell

2015-10-21 Thread Dan Doel
Hello, I'm Dan Doel. I'm on the core libraries committee (though I'm speaking only for myself). As I recall, one of the reasons I got tapped for it was due to my having some historical knowledge about Haskell; not because I was there, but because I've gone back and looked at

Re: Proposal: Non-recursive let

2013-07-10 Thread Dan Doel
On Wed, Jul 10, 2013 at 3:08 AM, Andreas Abel wrote: > Another instance (cut-down) are let-guards like > > let Just x | x > 0 = e in x > > The "x > 0" is understood as an assertion here, documenting an invariant. > However, Haskell reads this as > > let Just x = case () of { () | x > 0 -> e }

Re: Status of Haskell'?

2012-12-02 Thread Dan Doel
about MPTCs alone that would be a problem, though. On Sun, Dec 2, 2012 at 2:56 PM, Gábor Lehel wrote: > On Sun, Dec 2, 2012 at 7:06 PM, Dan Doel wrote: > > This is a significant problem for even some of the more ubiquitous > > extensions. For instance, there are multiple comp

Re: Status of Haskell'?

2012-12-02 Thread Dan Doel
This is a significant problem for even some of the more ubiquitous extensions. For instance, there are multiple compilers that implement RankNTypes, but I would not be surprised at all if programs using that extension were not portable across implementations (they're not really even portable across

Re: TypeFamilies vs. FunctionalDependencies & type-level recursion

2011-06-15 Thread Dan Doel
On Tue, Jun 14, 2011 at 9:56 PM, wrote: > Maybe "functional dependencies" is a poor name.  I'm not going to > argue it's a good one, just that the extension is quite useful. > Despite what the name suggests, it is most useful to think of > "| a b -> c d" as meaning "any method that uses types a an

Re: TypeFamilies vs. FunctionalDependencies & type-level recursion

2011-06-15 Thread Dan Doel
On Wed, Jun 15, 2011 at 3:25 AM, Simon Peyton-Jones wrote: > Wait.  What about >        instance C [a] [b] > ?  Should that be accepted?  The Coverage Condition says "no", and indeed it > is rejected. But if you add -XUndecidableInstances it is accepted. This 'clearly' violates the functional de

Re: TypeFamilies vs. FunctionalDependencies & type-level recursion

2011-06-14 Thread Dan Doel
On Tue, Jun 14, 2011 at 5:38 PM, wrote: > Undecidable instances are orthogonal to both FunctionalDependencies > and OverlappingInstances.  They concern whether or not the compiler > can guarantee that the typechecker will terminate.  You can have > undecidable instances without either of the other

Re: TypeFamilies vs. FunctionalDependencies & type-level recursion

2011-06-14 Thread Dan Doel
On Tue, Jun 14, 2011 at 1:19 PM, wrote: > No, these are not equivalent.  The first one "TypeEq a b c" is just > declaring an instance that works "forall c".  The second is declaring > multiple instances, which, if there were class methods, could have > different code.  The second one is illegal, b

Re: TypeFamilies vs. FunctionalDependencies & type-level recursion

2011-06-14 Thread Dan Doel
Sorry about the double send, David. I forgot to switch to reply-all in the gmail interface. On Tue, Jun 14, 2011 at 11:49 AM, wrote: > You absolutely still can use FunctionalDependencies to determine type > equality in GHC 7.  For example, I just verified the code below with > GHC 7.02: > > *Main

Re: TypeFamilies vs. FunctionalDependencies & type-level recursion

2011-06-14 Thread Dan Doel
On Tue, Jun 14, 2011 at 11:27 AM, Andrea Vezzosi wrote: >>    class C a b | a -> b >>    instance C a R >>    instance C T U > > Are you sure that worked before? 80% > The following still does anyhow: > >    data R >    data T >    data U >    class C a b | a -> b >    instance TypeCast R b => C

Re: TypeFamilies vs. FunctionalDependencies & type-level recursion

2011-06-14 Thread Dan Doel
On Tue, Jun 14, 2011 at 5:36 AM, Simon Peyton-Jones wrote: > There was an interesting thread on haskell-prime [1], about the relationship > between functional dependencies and type families.  This message is my > attempt to summarise the conclusions of that thread.  I'm copying other > interest

Re: TypeFamilies vs. FunctionalDependencies & type-level recursion

2011-05-29 Thread Dan Doel
On Sun, May 29, 2011 at 6:45 PM, Ben Millwood wrote: > It would seem very strange to me if haskell-prime made the choice of > fundeps/type families based on the behaviour with > OverlappingInstances. I'm under the impression that Overlapping is > generally considered one of the more controversial

Re: In opposition of Functor as super-class of Monad

2011-01-04 Thread Dan Doel
On Tuesday 04 January 2011 5:24:21 am o...@okmij.org wrote: > Method A: just define bind as usual > > > instance (Functor (Iteratee el m),Monad m) => Monad (Iteratee el m) where > > > > return = IE_done > > > > IE_done a >>= f = f a > > IE_cont e k >>= f = IE_cont e (\s -> k s

Re: Negation

2010-02-08 Thread Dan Doel
On Monday 08 February 2010 11:18:07 am Simon Peyton-Jones wrote: > I think that Hugs is right here. After all, there is no ambiguity in any > of these expressions. And an application-domain user found this behaviour > very surprising. I think it's clear what one would expect the result of thes

Re: Suggestion regarding (.) and map

2008-04-24 Thread Dan Doel
On Thursday 24 April 2008, Wolfgang Jeltsch wrote: > I don’t think that this is reasonable. (.) corresponds to the little > circle in math which is a composition. So (.) = (<<<) would be far better. Were I building a library, this might be the direction I'd take things. They're two incompatible

Re: Meta-point: backward compatibility

2008-04-23 Thread Dan Doel
On Wednesday 23 April 2008, Chris Smith wrote: > I don't think I agree that fail in the Monad typeclass is a good example > here, or necessarily that there is a good example. > > We should remember that there is a cohesive community of Haskell > programmers; not a bunch of unrelated individuals who

Re: patch applied (haskell-prime-status): add ""Make $ left associative, like application"

2008-04-23 Thread Dan Doel
On Wednesday 23 April 2008, Bulat Ziganshin wrote: > it's not refactoring! it's just adding more features - exception > handler, progress indicator, memory pool and so on. actually, code > blocks used as a sort of RAII for Haskell. are you wanna change all > those ';' when you add new variable to y

Re: patch applied (haskell-prime-status): add ""Make $ left associative, like application"

2008-04-23 Thread Dan Doel
On Wednesday 23 April 2008, Bulat Ziganshin wrote: > Hello Dan, > > Wednesday, April 23, 2008, 1:42:20 PM, you wrote: > > This wouldn't work, you'd have to rewrite it as: > > > > withSomeResource foo . > > withSomeOtherThing bar . > > yetAnotherBlockStructured thing $ ... > > it i

Re: patch applied (haskell-prime-status): add ""Make $ left associative, like application"

2008-04-23 Thread Dan Doel
On Wednesday 23 April 2008, Duncan Coutts wrote: > withSomeResource foo $ > withSomeOtherThing bar $ > yetAnotherBlockStructured thing $ ... > > Does that work? This wouldn't work, you'd have to rewrite it as: withSomeResource foo . withSomeOtherThing bar . yetAnotherBlock

Re: patch applied (haskell-prime-status): add ""Make $ left associative, like application"

2008-04-22 Thread Dan Doel
On Tuesday 22 April 2008, Simon Marlow wrote: > I'm hoping someone will supply some. There seemed to be strong opinion > on #haskell that this change should be made, but it might just have been > a very vocal minority. These are the arguments off the top of my head: 1) Anything of the form: