Re: [Haskell-cafe] Re: [Haskell] Announce: generating free theorems, online and offline

2007-10-18 Thread ajb
G'day. Quoting Janis Voigtlaender [EMAIL PROTECTED]: Hmm, but I can easily define an instance of Eq that does not satisfy this invariant. And I want the generated free theorem to be true for any legal Haskell program. I would think that if x == y isn't the same as not (x /= y) for some type,

Re: [Haskell-cafe] Re: [Haskell] Announce: generating free theorems, online and offline

2007-10-18 Thread Janis Voigtlaender
[EMAIL PROTECTED] wrote: G'day. Quoting Janis Voigtlaender [EMAIL PROTECTED]: Hmm, but I can easily define an instance of Eq that does not satisfy this invariant. And I want the generated free theorem to be true for any legal Haskell program. I would think that if x == y isn't the same as

Re: [Haskell-cafe] Re: [Haskell] Announce: generating free theorems, online and offline

2007-10-18 Thread Ryan Ingram
On 10/17/07, Janis Voigtlaender [EMAIL PROTECTED] wrote: Okay, it is quite natural to take this stand. But as you say, there is no such commitment in the language definition. And even if there were, I doubt it would be possible to enforce such invariants in a compiler. So there would be

Re: [Haskell-cafe] Re: [Haskell] Announce: generating free theorems, online and offline

2007-10-18 Thread ajb
G'day all. Quoting Janis Voigtlaender [EMAIL PROTECTED]: Okay, it is quite natural to take this stand. But as you say, there is no such commitment in the language definition. And even if there were, I doubt it would be possible to enforce such invariants in a compiler. So there would be

Re: [Haskell-cafe] Re: [Haskell] Announce: generating free theorems, online and offline

2007-10-18 Thread Stefan O'Rear
On Thu, Oct 18, 2007 at 03:36:01AM -0400, [EMAIL PROTECTED] wrote: (As an aside: The H98 report still list the right-zero law as being a law for MonadPlus, even though most MonadPlus instances don't obey it. That's actually a defect in the report.) All the MonadPlus I can think of

Re: [Haskell-cafe] Re: [Haskell] Announce: generating free theorems, online and offline

2007-10-18 Thread Dan Weston
Now that I look at it, the report notes that: -- Note that (min x y, max x y) = (x,y) or (y,x) but never says that this requirement is mandatory. That's because the comment applies only to the default implementation, not in general. The report does require that The Ord class is used

Re: [Haskell-cafe] Re: [Haskell] Announce: generating free theorems, online and offline

2007-10-18 Thread Stefan O'Rear
On Thu, Oct 18, 2007 at 08:39:04PM -0400, David Menendez wrote: On 10/18/07, Stefan O'Rear [EMAIL PROTECTED] wrote: On Thu, Oct 18, 2007 at 03:36:01AM -0400, [EMAIL PROTECTED] wrote: (As an aside: The H98 report still list the right-zero law as being a law for MonadPlus, even though most

Re: [Haskell-cafe] Re: [Haskell] Announce: generating free theorems, online and offline

2007-10-18 Thread David Menendez
On 10/18/07, Stefan O'Rear [EMAIL PROTECTED] wrote: On Thu, Oct 18, 2007 at 03:36:01AM -0400, [EMAIL PROTECTED] wrote: (As an aside: The H98 report still list the right-zero law as being a law for MonadPlus, even though most MonadPlus instances don't obey it. That's actually a defect in

[Haskell-cafe] Re: [Haskell] Announce: generating free theorems, online and offline

2007-10-17 Thread ajb
[Ccing to haskell-cafe; please direct any replies there instead of haskell] G'day all. First of all, once again well done to Sascha on a great tool. Just a few comments. Quoting Janis Voigtlaender [EMAIL PROTECTED]: - support for type classes (e.g., enter elem and note the generated

Re: [Haskell-cafe] Re: [Haskell] Announce: generating free theorems, online and offline

2007-10-17 Thread Janis Voigtlaender
[EMAIL PROTECTED] wrote: Some of these respects-restrictions arent as useful as they might be, because they don't take into account easily-predictable invariants. For example, the type: (Eq a) = [a] - [a] generates the following restriction: g respects Eq if forall x :: t1.