"Functional dependencies conflict between instance declarations"

The Haskell mailing list seems to be filled with people requesting information about this error, so I cannot resist to include myself in it ;-) I've read the information about funcdeps in the GHC user guide, and I think I understand how it works, but I get the error a lot, without having a clue why. Sometimes I get the error even when all the types of all the type parameters are completely different, so even when all parameters would be one-to-one dependent, I still don't get why I would get a conflict error. Does a wiki exists with possible reasons why this error occured and how to fix it? Thanks, Peter

Never mind, that GHC compiler was again more clever than me, sigh. That's really frustrating about Haskell: the compiler captures so many errors at compile time, that newbies hardly get anything done, it's a constant battle against the errors. But once it compiles, it usually works at runtime :-) Happy hacking, Peter

Peter Verswyvelen wrote:
Never mind, that GHC compiler was again more clever than me, sigh.
That's really frustrating about Haskell: the compiler captures so many errors at compile time, that newbies hardly get anything done, it's a constant battle against the errors. But once it compiles, it usually works at runtime :-)
This is what I love about Haskell: If it typechecks, it probably does the thing you meant it to. I've never seen any other language like it. It's amazing!

Never mind, that GHC compiler was again more clever than me, sigh. That's really frustrating about Haskell: the compiler captures so many errors at compile time, that newbies hardly get anything done, it's a constant battle against the errors. But once it compiles, it usually works at runtime :-) This is what I love about Haskell: If it typechecks, it probably does the thing you meant it to. I've never seen any other language like it. It's amazing!
Next stop: Coq, where the fight with the type checker is so much more difficult that when the code finally type checks you don't even need to run it at all. Stefan

Are you kidding, or has automatic proving of programs evolved that far? Anyway, for my sector, videogames, "proving" if something works correctly is subjective, it's very hard to check if "the gameplay of a game is good enough" since that involves human fuzzy judgement ;-) Although this might just be statistics, so can be proven too! Aaarrrggghhhh, soon we're all out of job ;-) Peter -----Original Message----- From: haskell-cafe-bounces@haskell.org [mailto:haskell-cafe-bounces@haskell.org] On Behalf Of Stefan Monnier Sent: Wednesday, September 12, 2007 7:06 PM To: haskell-cafe@haskell.org Subject: [Haskell-cafe] Re: "Functional dependencies conflict between instance declarations"
Never mind, that GHC compiler was again more clever than me, sigh. That's really frustrating about Haskell: the compiler captures so many errors at compile time, that newbies hardly get anything done, it's a constant battle against the errors. But once it compiles, it usually works at runtime :-) This is what I love about Haskell: If it typechecks, it probably does the thing you meant it to. I've never seen any other language like it. It's amazing!
Next stop: Coq, where the fight with the type checker is so much more difficult that when the code finally type checks you don't even need to run it at all. Stefan _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

bf3@telenet.be wrote:
Are you kidding, or has automatic proving of programs evolved that far?
Aaarrrggghhhh, soon we're all out of job ;-)
"Experts" have been proclaiming this since high-level programming was invented many decades ago. We're still waiting. ;-)
participants (4)
-
Andrew Coppin
-
bf3@telenet.be
-
Peter Verswyvelen
-
Stefan Monnier