Let me try this option and see how I go.

Thanks

-John

On 1/25/07, Brandon S. Allbery KF8NH <[EMAIL PROTECTED]> wrote:

> (b) I think you *can* do this with a class:
>
> class Node a where
>    name :: a -> String
>
> data Branch = Branch { brName :: String, ... }
> data Leaf = Leaf { lName :: String, ... }
>
> instance Node Branch where
>    name = brName
>
> instance Node Leaf where
>    name = lName
>
> Okay, though it's a lot more wordy.

How so?  You were declaring the class and instances anyway; I simply
defined a new method to go into it and renamed the constructor fields
to obey Haskell's rules, but you will probably be using the class
method so your code won't care about the latter.

--
brandon s. allbery    [linux,solaris,freebsd,perl]     [EMAIL PROTECTED]
system administrator [openafs,heimdal,too many hats] [EMAIL PROTECTED]
electrical and computer engineering, carnegie mellon university    KF8NH




_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to