11 Mar
2008
11 Mar
'08
1:33 a.m.
On Mon, Mar 10, 2008 at 01:50:09PM -0400, Samuel Bronson wrote:
On 3/10/08, John Meacham
wrote: instance Foo Char where foo c = ord c
produces the following core
Instance@.Main.Foo.foo.Prelude.Char :: Char -> Int Instance@.Main.Foo.foo.Prelude.Char c = ord c
{-# RULES "foo/char/instance" Main.foo Char = Instance@.Main.Foo.foo.Prelude.Char #-}
Hmm. What should I name default implementations?
Those are named 'Instance@.Main.Foo.foo.default' and have the type 'forall a . a -> Int' . A default method always exists, even if it is just an error saying no default method was supplied. RULES are generated for the default methods as well in the same fashion. John -- John Meacham - ⑆repetae.net⑆john⑈